Nejčastější dotazy k rozhraním API pro Windows Age

Tento článek odpovídá na nejčastější dotazy k používání rozhraní API Windows Age k vytváření uživatelských prostředí aplikací vhodných pro věk.

Overview

Co jsou rozhraní API Windows Age?

Rozhraní API Windows Age poskytují věkové signály chránící soukromí pro uživatele, který spouští aktuální proces. Místo vrácení přesného věku nebo data narození vrátí Windows věkové rozmezí nebo stav ověření dospělosti, který může aplikace použít k poskytování prostředí vhodného pro věk.

Tato rozhraní API jsou metodami rozhraní prostředí Windows Runtime na Windows.System.User. Pomáhají aplikacím při rozhodování o prostředí a zásadách souvisejících s věkem, aniž by obdržely přesné datum narození uživatele.

Pokud uživatel souhlasí, může vývojář přistupovat k signálům o věku, které můžou aplikace používat při navrhování prostředí vhodných pro věk. Vývojáři aplikací zůstávají zodpovědní za určení toho, jak se příslušné zákony a požadavky vztahují na jejich produkty.

Pro jaké scénáře jsou rozhraní API Windows Age určena?

Aplikace můžou používat věkové signály, pokud je věk relevantní pro uživatelský dojem. Aplikace může například použít věkový signál, pokud aplikace:

  • Zobrazí uživatelem generovaný obsah, sociální funkce nebo komunikaci, které nemusí být vhodné pro všechny věkové kategorie.
  • Nabízí nákupy v aplikaci nebo virtuální měny, pro které se můžou uplatnit věková omezení.
  • Streamuje nebo přehrává média s věkovým hodnocením.

Obecněji může aplikace používat věkový signál k přizpůsobení obsahu, funkcí nebo řízení přístupu bez shromažďování data narození.

Která rozhraní API Windows Age jsou k dispozici?

Následující rozhraní API podporují různé scénáře:

  • GetUserAgeRangeAsync vrátí objekt UserAgeRange, který obsahuje inkluzivní dolní a horní mez věkové skupiny uživatele. Předdefinované skupiny jsou pod 10, 10–12, 13–15, 16–17 a 18 a více. Výsledek null znamená, že věkový rozsah je neznámý nebo nedostupný.
  • GetAgeVerificationStatusAsync vrací UserAgeVerificationStatus, který označuje stav ověření plnoletosti uživatele. Neověřuje libovolný věk nebo věkovou skupinu.

Ověřuje ověření věku věk uživatele, nebo jeho věkovou skupinu?

No. Ověření věku poskytuje ověřený status dospělého, nikoli ověřený status pro žádný věk ani věkovou skupinu. Pro ověření na základě účtu musí uživatel, který tvrdí, že je dospělý, projít procesem ověření, který kontroluje, zda je tato osoba dospělá. Proces kontroluje prohlášení, že je osoba dospělá; nestanovuje ověřený věk dítěte nebo dospívajícího.

Informace o ověření věku pro účet Microsoft najdete v tématu Ověření věku účet Microsoft.

GetAgeVerificationStatusAsync hlásí stav ověření plnoletosti. Výsledek Verified potvrzuje ověřený status dospělého. Jiné výsledky neprokazují, že je uživatel nezletilý: vaše aplikace musí rozlišit výsledek Unverified, výsledek OptedOut a nedostupné nebo neurčité výsledky.

Jsou rozhraní Windows Age APIs obecně dostupná?

GetUserAgeRangeAsync a GetAgeVerificationStatusAsync jsou obecně dostupné. Podporované prodejní Windows buildy jsou:

  • Windows 11 verze 24H2: build 26100.9550 nebo novější.
  • Windows 11 verze 25H2: build 26200.9550 nebo novější.

Windows SDK verze 10.0.26100.9169 nebo novější zahrnuje tato rozhraní API.

Které rozhraní API by moje aplikace měla používat?

Použití:

  • GetUserAgeRangeAsync když vaše aplikace potřebuje věkovou skupinu a použije vlastní logiku pro prostředí nebo zásady.
  • GetAgeVerificationStatusAsync pokud rozhodnutí závisí na tom, jestli uživatel ověřil, že je plnoletý.

Aplikace může použít více než jeden věkový signál, pokud je to vhodné pro svůj scénář. Výsledek věkového rozsahu 18 let a více sám o sobě nepotvrzuje ověřený status dospělé osoby.

Ochrana osobních údajů a zpracování dat

Můžu pro GetUserAgeRangeAsync nakonfigurovat vlastní věkové rozsahy?

No. Věkové skupiny vrácené pomocí GetUserAgeRangeAsync jsou předdefinované.

Vrací rozhraní API přesné stáří nebo datum narození uživatele?

No. GetUserAgeRangeAsync vrátí věkovou skupinu, nikoli přesný věk nebo datum narození. Například výsledek s dolními a horními hranicemi {13, 15} znamená, že věk uživatele je ve věkové skupině 13–15 let.

GetAgeVerificationStatusAsync hlásí stav ověření dospělosti, ne ověřený věk nebo ověřenou věkovou skupinu.

Potřebuje moje aplikace shromáždit datum narození uživatele, aby používala Windows Age APIs?

No. Jedním z účelů rozhraní API je umožnit aplikacím činit rozhodnutí související s věkem, aniž by přímo obdržely datum narození uživatele.

Mají aplikace ukládat údaj o věku?

Aplikace by se měly vyhnout zbytečnému trvalému uchovávání věkových signálů. Načtěte signál, když je potřeba, protože se může změnit věková skupina uživatele, stav ověření, stav účtu nebo příslušné zásady správy.

Chování uživatele a účtu

Jaké typy účtů jsou podporované?

Věkové signály poskytovatele identity jsou aktuálně k dispozici pouze pro účty Microsoft. U jiných typů účtů platí, že pokud není nakonfigurované výchozí nastavení pro správu, GetUserAgeRangeAsync vrátí hodnotu nulla GetAgeVerificationStatusAsync vrátí hodnotu NotApplicable.

O kterém uživateli rozhraní Age API vrací informace?

Volání Age API platí pro uživatele, který spouští aktuální proces. Na zařízení s více profily Windows se rozhraní API dotazují na profil aktuálního uživatele pro aktivní prostředí aplikace. Rozhraní API neposkytují mechanismus pro dotazování na jiný profil.

Může se aplikace dotazovat na signál o věku pro jiného uživatele v zařízení?

No. Rozhraní API fungují v kontextu uživatele, který proces spouští. Volání rozhraní AGE API s User objektem, který představuje jiného uživatele, může mít za následek E_ACCESSDENIED.

Co se stane, když má uživatel více typů účtů připojených k Windows?

Rozhraní API Windows Age fungují v kontextu aktuálně přihlášeného uživatele Windows a používají účet Microsoft přidružený k přihlášení tohoto uživatele Windows. Aplikace nemůžou pro dotaz vybrat jiný připojený účet.

Co když není možné určit věkový signál?

Aplikace musí být připravené na to, aby byl signál o věku nedostupný nebo neurčitý.

Pro GetUserAgeRangeAsync, null znamená, že věkové rozmezí je neznámé nebo nedostupné. Mezi podmínky, které mohou způsobit null, patří:

  • Typ účtu není podporovaný.
  • Informace o věku nejsou pro účet k dispozici.
  • Rozhraní API je zakázané administrativními zásadami.

Pro GetAgeVerificationStatusAsync, NotApplicable nebo TemporarilyUnavailable představuje nedostupný nebo neurčitý ověřovací signál. Tyto výsledky neprokazují, zda uživatel ověřil plnoletost.

Aplikace musí poskytovat vhodné záložní řešení a nesmí interpretovat nedostupný výsledek jako konkrétní věkovou skupinu nebo stav ověření.

Měly by aplikace předpokládat, že je vždy dostupný věkový signál?

No. Aplikace by měly navrhnout záložní chování v rámci integrace rozhraní Age API. Považujte platný signál, nedostupný nebo neurčitý signál a chybu „přístup odepřen“ za odlišné stavy.

Požadavky a implementace aplikace

Jaký operační systém a sada SDK jsou potřeba?

Windows 11 je minimální podporovaná verze operačního systému. GetUserAgeRangeAsync a GetAgeVerificationStatusAsync jsou k dispozici v následujících podporovaných maloobchodních buildech:

  • Windows 11 verze 24H2: build 26100.9550 nebo novější.
  • Windows 11 verze 25H2: build 26200.9550 nebo novější.

K vytvoření aplikace, která volá tato rozhraní API, použijte sadu Windows SDK verze 10.0.26100.9169 nebo novější.

Vzhledem k tomu, že rozhraní API ve starším nebo nespravovaném systému může chybět, zkontrolujte dostupnost rozhraní API předtím, než ho zavoláte.

Potřebuje moje aplikace deklarovat oprávnění?

Yes. Aplikace UWP musí v manifestu balíčku deklarovat schopnost userAccountInformation:

<uap:Capability Name="userAccountInformation" />

Bez požadovaného přístupu nemůže aplikace číst věková data uživatele.

Jak získám objekt User použitý k volání rozhraní Age API?

Použijte User.GetDefault k získání uživatele, pod kterým běží aktuální proces. User.FindAllAsync může vyjmenovat uživatele, ale rozhraní AGE API se musí volat s User instancí, která představuje uživatele, který proces spouští.

Jak dlouho trvá, než se změna data narození nebo narozeniny projeví v signálu věku?

Pokud uživatel změní datum narození přidružené ke svému účet Microsoft nebo má narozeniny, změna se projeví do 24 hodin od posledního načtení signálu věku.

Může aplikace vynutit aktualizaci age signálu?

No. Vynucená aktualizace se nepodporuje.

Zpracování chyb a fallbacků

Jak by aplikace měla zpracovat nedostupný věkový rozsah?

Výslovně řešte případ, kdy není věkové rozmezí k dispozici, místo toho, abyste předpokládali věk. Výsledek null z GetUserAgeRangeAsync znamená, že věkový rozsah je neznámý nebo nedostupný.

Používejte záměrně navržené záložní řešení. Neinterpretujte null jako určitou věkovou skupinu, včetně skupiny 18letých a starších.

Co znamená E_ACCESSDENIED?

E_ACCESSDENIED může znamenat, že volající nemá přístup k informacím o účtu nebo že aplikace volala rozhraní API s objektem User pro někoho jiného než uživatele, který proces spouští.

Považujte tuto chybu za odlišnou od nedostupného signálu. V závislosti na rozhraní API se vrátí nedostupný signál jako null, NotApplicablenebo TemporarilyUnavailable.

Co má aplikace dělat s neznámým stavem ověření?

Zpracujte nedostupné nebo neurčité stavy ověřování explicitně a poskytněte záložní řešení. NotApplicable a TemporarilyUnavailable neurčují, jestli má uživatel ověřený stav dospělého. Tyto výsledky ani OptedOut, ani Unverified neinterpretujte jako důkaz, že je uživatel nezletilý.

Viz také