Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Desktop Bridge apps (viz Sestavení balíčku MSIX z kódu) jsou desktopové aplikace pro Windows převedené na aplikace univerzální platformy Windows (UWP) pomocí Desktop Bridge. Po převodu se desktopová aplikace Pro Windows zabalí, obsluhuje a nasadí ve formě balíčku aplikace pro UPW (.appx nebo .appxbundle), který cílí na Windows 10 Desktop.
Povinné a volitelné testy
Volitelné testy pro aplikace vytvořené pomocí Windows Desktop Bridge slouží pouze k informaci a nebudou použity k vyhodnocení vaší aplikace během procesu uvádění na Microsoft Store. Doporučujeme prošetřit tyto výsledky testů, aby se vytvořily aplikace s vyšší kvalitou. Celková kritéria úspěšnosti/neúspěšnosti pro zavádění obchodu jsou určena požadovanými testy, a ne těmito volitelnými testy.
Aktuální volitelné testy
1. Test digitálně podepsaných souborů
pozadí
Tento test ověří, že všechny přenosné spustitelné soubory (PE) obsahují platný podpis. Přítomnost digitálně podepsaných souborů umožňuje uživatelům vědět, že software je originální.
Detaily testu
Test prohledá všechny přenosné spustitelné soubory v balíčku a zkontroluje jejich hlavičky na podpis. Všechny soubory PE se doporučuje digitálně podepsat. Pokud některý ze souborů PE není podepsaný, vygeneruje se upozornění.
Nápravná opatření
Vždy se doporučuje mít digitálně podepsané soubory. Další informace naleznete v tématu Úvod do podepisování kódu.
Slovesa pro asociaci souborů
pozadí
Tento test zkontroluje registr balíčků a zkontroluje, jestli jsou zaregistrované nějaké příkazy přidružení souborů.
Podrobnosti testu
Převedené desktopové aplikace je možné rozšířit pomocí široké škály rozhraní API prostředí Windows Runtime. Tento test zkontroluje, jestli binární soubory UPW v aplikaci nevolají jiná rozhraní API než Windows Runtime. Binární soubory UPW mají nastavený příznak AppContainer.
Nápravná opatření
Viz Desktop to UWP Bridge: Rozšíření aplikací pro vysvětlení těchto rozšíření a jejich správné použití.
3. Ladění konfiguračního testu
Tento test ověřuje, že .msix nebo .appx není ladicí sestavení.
pozadí
Aby byly aplikace certifikované pro Microsoft Store, nesmí být kompilovány pro ladění a nesmí odkazovat na ladicí verze spustitelného souboru. Kromě toho musíte vytvořit kód, který je optimalizovaný pro aplikaci, aby tento test prošel.
Podrobnosti testu
Otestujte aplikaci, abyste se ujistili, že se nejedná o sestavení ladění a není propojená s žádnými ladicími architekturami.
Nápravná opatření
- Před odesláním aplikace do Microsoft Storu vytvořte aplikaci jako build verze.
- Ujistěte se, že máte nainstalovanou správnou verzi rozhraní .NET Framework.
- Ujistěte se, že aplikace není propojena s ladicí verzí frameworku a že se sestavuje s verzí pro vydání. Pokud tato aplikace obsahuje komponenty .NET, ujistěte se, že máte nainstalovanou správnou verzi rozhraní .NET Framework.
4. Základní kontrola balíku
4.1 Použití archivu souborů
pozadí
Tento test vám pomůže sestavovat lepší Desktop Bridge aplikace pro spouštění na počítačích s Windows 10 S.
Podrobnosti testu
Tento test kontroluje všechny spustitelné soubory uvnitř archivovaných souborů nebo samoextrahujícího obsahu. Vzhledem k tomu, že při onboardingu do Windows Storu nejsou podepsané spustitelné soubory obsažené v tomto typu obsahu, nemusí aplikace běžet podle očekávání v systémech Windows 10 S.
Nápravné akce
- Zvažte vyhodnocení souborů označených testem, abyste zjistili, jestli má aplikace spuštěná v prostředí s Windows 10 S vliv.
- Pokud by to mělo vliv na vaši aplikaci, odeberte spustitelné soubory z archivovaných souborů a nepoužívejte samoobslužné extrahování archivů k umístění spustitelných souborů na disk. To by mělo zabránit ztrátě funkčnosti aplikace.
4.2 Blokované spustitelné soubory
pozadí
Tento test vám pomůže sestavovat lepší desktopové aplikace mostu pro spouštění na počítačích s Windows 10 S.
Podrobnosti testu
Tento test zkontroluje, jestli se aplikace pokouší spustit spustitelné soubory, které jsou omezené na systémy Windows 10 S. Aplikace, které spoléhají na tuto funkci, nemusí běžet podle očekávání v systémech Windows 10 S.
Nápravná opatření
- Určete, které položky označené příznakem z testu představují volání ke spuštění spustitelného souboru, který není součástí vaší aplikace, a odeberte tato volání.
- Pokud jsou soubory s příznakem součástí vaší aplikace, můžete upozornění ignorovat.
Aktuální požadované testy
1. Test schopností aplikací (speciální možnosti použití)
pozadí
Speciální možnosti použití jsou určeny pro velmi specifické scénáře. Tyto funkce můžou používat jenom firemní účty.
Podrobnosti testu
Ověřte, jestli aplikace deklaruje některou z následujících funkcí:
- Podniková autentizace
- Certifikáty Sdílených Uživatelů
- Knihovna dokumentů
Pokud jsou některé z těchto funkcí deklarovány, test uživateli zobrazí upozornění.
Nápravné akce
Pokud to vaše aplikace nevyžaduje, zvažte odebrání speciální možnosti použití. Kromě toho použití těchto funkcí podléhá další kontrole zásad připojování.
2. Testy prostředků manifestu aplikace
2.1 Ověření prostředků aplikace
Pokud jsou řetězce nebo obrázky deklarované v manifestu aplikace nesprávné, nemusí se vaše aplikace správně nainstalovat. Pokud se aplikace nainstaluje s těmito chybami, logo vaší aplikace nebo jiné obrázky se nemusí zobrazit správně.
Podrobnosti o testu
Kontroluje prostředky definované v manifestu aplikace, aby se ujistil, že jsou přítomné a platné.
opravné akce
Jako vodítko použijte následující tabulku.
| Zpráva o chybě | Komentáře |
|---|---|
| Image {image name} definuje kvalifikátory Scale i TargetSize; můžete definovat pouze jeden kvalifikátor najednou. | Obrázky můžete přizpůsobit pro různá rozlišení. Ve skutečné zprávě obsahuje {image name} název obrázku s chybou. Ujistěte se, že každý obrázek definuje jako určující parametr buď měřítko, nebo velikost cíle. |
| Obrázek {název image} nesplnil velikostní omezení. | Ujistěte se, že všechny image aplikací dodržují správná omezení velikosti. Ve skutečné zprávě obsahuje {image name} název obrázku s chybou. |
| V balíčku chybí obrázek {image name}. | Chybí požadovaný obrázek. Ve skutečné zprávě obsahuje {image name} název chybějícího obrázku. |
| Obrázek {image name} není platný obrázkový soubor. | Ujistěte se, že všechny obrázky aplikace dodržují správná omezení typu formátu souboru. Ve skutečné zprávě obsahuje {image name} název obrázku, který není platný. |
| Obrázek BadgeLogo má hodnotu ABGR {value} na pozici (x, y), která není platná. Pixel musí být bílý (##FFFFFF) nebo průhledný (00######). | Logo odznáčku je obrázek, který se zobrazí vedle oznámení o odznáčku a identifikuje aplikaci na zamykací obrazovce. Tento obrázek musí být monochromatic (může obsahovat pouze bílé a průhledné pixely). Ve skutečné zprávě obsahuje {value} hodnotu barvy v obrázku, která není platná. |
| Obrázek BadgeLogo má hodnotu ABGR {value} na pozici (x, y), která není platná pro bílý obrázek s vysokým kontrastem. Pixel musí být (##2A2A2A) nebo tmavší nebo průhledný (00######). | Logo odznáčku je obrázek, který se zobrazí vedle oznámení o odznáčku a identifikuje aplikaci na zamykací obrazovce. Vzhledem k tomu, že logo odznaku se zobrazuje na bílém pozadí při vysokém kontrastu bílé, musí se jednat o tmavou verzi normálního loga odznaku. Logo odznáčku může ve vysokém kontrastu bílé obsahovat pouze pixely, které jsou tmavší než (##2A2A2A) nebo průhledné. Ve skutečné zprávě obsahuje {value} hodnotu barvy v obrázku, která není platná. |
| Obrázek musí definovat alespoň jednu variantu bez kvalifikátoru TargetSize. Musí definovat kvalifikátor Měřítka nebo ponechat Měřítko a cílovou velikost nezadané, což má jako výchozí hodnotu Měřítko-100. | Další informace najdete v průvodcích responzivním návrhem a prostředků aplikace. |
| V balíčku chybí soubor resources.pri. | Pokud máte v manifestu aplikace lokalizovatelný obsah, ujistěte se, že balíček vaší aplikace obsahuje platný soubor resources.pri. |
| Soubor resources.pri musí obsahovat mapu prostředků s názvem, který odpovídá názvu balíčku {package full name}. | Tato chyba se může zobrazit, pokud se manifest změnil a název mapy prostředků v souboru resources.pri již neodpovídá názvu balíčku v manifestu. Ve skutečné zprávě obsahuje {package full name} název balíčku, který musí obsahovat resources.pri. Pokud chcete tento problém vyřešit, musíte znovu sestavit resources.pri a nejjednodušší způsob, jak to provést opětovným sestavením balíčku aplikace. |
| Soubor resources.pri nesmí mít povolenou funkci AutoMerge. | MakePRI.exe podporuje možnost s názvem AutoMerge. Výchozí hodnota AutoMerge je vypnutá. Když je tato funkce povolená, autoMerge sloučí prostředky jazykové sady aplikace do jednoho souboru resources.pri za běhu. Nedoporučujeme to pro aplikace, které chcete distribuovat prostřednictvím Microsoft Storu. Resources.pri aplikace, která je distribuovaná prostřednictvím Microsoft Storu, musí být v kořenovém adresáři balíčku aplikace a musí obsahovat všechny jazykové odkazy, které aplikace podporuje. |
| Řetězec {string} selhal s omezením maximální délky {number} znaků. | Projděte si požadavky na balíček aplikace . Ve skutečné zprávě je řetězec {string} nahrazen řetězcem s chybou a {number} obsahuje maximální délku. |
| Řetězec {string} nesmí obsahovat úvodní nebo koncové prázdné znaky. | Schéma prvků v manifestu aplikace neumožňuje počáteční nebo koncové prázdné znaky. Ve skutečné zprávě je řetězec {string} nahrazen řetězcem s chybou. Ujistěte se, že žádná z lokalizovaných hodnot polí manifestu v resources.pri nemá počáteční nebo koncové prázdné znaky. |
| Řetězec musí být neprázdný (větší než nula v délce). | Další informace najdete v tématu Požadavky na balíček aplikace. |
| V souboru resources.pri není zadaný žádný výchozí prostředek. | Další informace najdete v průvodci o prostředcích aplikace . Ve výchozí konfiguraci sestavení Visual Studio zahrnuje do balíčku aplikace pouze obrazové prostředky v měřítku 200 při generování svazků a další prostředky umisťuje do balíčku prostředků. Ujistěte se, že buď zahrnete obrazové zdroje se škálováním 200, nebo nakonfigurujete projekt tak, aby zahrnoval zdroje, které máte. |
| V souboru resources.pri není zadaná žádná hodnota prostředku. | Ujistěte se, že manifest aplikace obsahuje platné prostředky definované v souboru resources.pri. |
| Soubor obrázku {filename} musí být menší než 204800 bajtů. | Zmenšete velikost označených obrázků. |
| Soubor {filename} nesmí obsahovat oddíl zpětné mapy. | I když se při volání do makepri.exegeneruje reverzní mapa během ladění F5 sady Visual Studio, lze ji při generování souboru pri odebrat spuštěním makepri.exe bez parametru /m. |
2.2 Ověření brandingu
pozadí
Očekává se, že aplikace Desktop Bridge budou dokončené a plně funkční. Aplikace používající výchozí obrázky (ze šablon nebo ukázek sady SDK) představují špatné uživatelské prostředí a nelze je snadno identifikovat v katalogu obchodů.
Podrobnosti o testu
Test ověří, jestli image používané aplikací nejsou výchozími obrázky z ukázek sady SDK nebo ze sady Visual Studio.
Nápravná opatření
Nahraďte výchozí obrázky něčím odlišným a reprezentativním pro vaši aplikaci.
3. Testy souladu s předpisy
3.1 Manifest aplikace
Otestuje obsah manifestu aplikace, aby se ujistil, že je jeho obsah správný.
pozadí
Aplikace musí mít správně formátovaný manifest aplikace.
Detaily testu
Zkontroluje manifest aplikace a ověří správnost obsahu, jak je popsáno v požadavcích balíčku aplikace . V tomto testu se provádějí následující kontroly:
-
Přípony souborů a protokoly
Vaše aplikace může deklarovat typy souborů, ke kterým může být přidružena. Deklarace velkého počtu neobvyklých typů souborů zajišťuje horší uživatelské prostředí. Tento test omezuje počet přípon souborů, ke kterým může být aplikace přidružena. -
Pravidlo závislosti na frameworku
Tento test vynucuje požadavek, že aplikace deklarují odpovídající závislosti na UWP. Pokud existuje nevhodná závislost, tento test selže. Pokud dojde k neshodě mezi verzí operačního systému, na které aplikace cílí, a vytvořenými závislostmi architektury, test selže. Test také selže, pokud aplikace odkazuje na jakékoli verze knihoven DLL architektury ve verzi „Preview“. -
Ověřování komunikace mezi procesy (IPC)
Tento test vynucuje požadavek, aby aplikace Desktop Bridge nekomunikovaly mimo kontejner aplikace s komponentami plochy. Komunikace mezi procesy je určená jen pro ručně nainstalované aplikace. Aplikace, které určují ActivatableClassAttribute s názvem, který se rovnáDesktopApplicationPath, selžou v tomto testu.
opravné akce
Projděte si manifest aplikace s požadavky popsanými v požadavcích na balíček aplikace .
3.2 Počet aplikací
Tento test ověří, že balíček aplikace (.appx, sada aplikací) obsahuje jednu aplikaci.
pozadí
Tento test je realizován podle zásad obchodu.
Podrobnosti testu
Tento test ověří, že celkový počet balíčků .appx v sadě je menší než 512 a že v sadě je pouze jeden "hlavní" balíček. Ověřuje také, že číslo revize verze sady je nastaveno na hodnotu 0.
Nápravná opatření
Ujistěte se, že balíček aplikace a sada splňují požadavky uvedené v podrobnostech o testu .
3.3 Kontroly registru
pozadí
Tento test zkontroluje, jestli aplikace nainstaluje nebo aktualizuje nové služby nebo ovladače.
Podrobnosti testu
Test hledá v souboru registry.dat aktualizace konkrétních umístění registru, které indikují registraci nové služby nebo ovladače. Pokud se aplikace pokouší nainstalovat ovladač nebo službu, test selže.
Nápravná opatření
Zkontrolujte selhání a odeberte příslušné služby nebo ovladače, pokud nejsou potřeba. Pokud tato aplikace závisí na těchto možnostech, budete ji muset upravit, pokud chcete aplikaci připojit do Storu.
4. Test souborů vhodných pro platformu
Aplikace, které instalují smíšené binární soubory, mohou chybovat nebo nefungovat správně v závislosti na architektuře procesoru uživatele.
pozadí
Tento test prohledá binární soubory v balíčku aplikace a vyhledá konflikty architektury. Balíček aplikace by neměl obsahovat binární soubory, které nelze použít v architektuře procesoru zadané v manifestu. Zahrnutí nepodporovaných binárních souborů může vést k chybovému ukončení aplikace nebo zbytečnému zvýšení velikosti balíčku aplikace.
Podrobnosti testu
Ověří, jestli je "bitnost" každého souboru v hlavičce přenosného spustitelného souboru správná při porovnání s deklarací architektury procesoru balíčku aplikace.
Nápravná opatření
Postupujte podle těchto pokynů a ujistěte se, že balíček aplikace obsahuje jenom soubory podporované architekturou uvedenou v manifestu aplikace:
- Pokud je architektura cílového procesoru pro vaši aplikaci neutrálním typem procesoru, balíček aplikace nemůže obsahovat soubory typu x86, x64 nebo Arm typu binárního souboru nebo typu obrázku.
- Pokud je architektura cílového procesoru pro vaši aplikaci typu procesoru x86, balíček aplikace musí obsahovat pouze binární soubory x86 nebo soubory typu obrázku. Pokud balíček obsahuje binární nebo obrazové typy x64 či Arm, test neuspěje.
- Pokud je architektura cílového procesoru pro vaši aplikaci typu procesoru x64, musí balíček aplikace obsahovat binární soubory x64 nebo soubory typu obrázku. Všimněte si, že v tomto případě může balíček obsahovat také soubory x86, ale primární prostředí aplikace by mělo využívat binární soubor x64. Pokud balíček obsahuje binární soubory arm nebo soubory typu image, nebo pouze obsahuje binární soubory x86 nebo soubory typu image, test selže.
- Pokud je architektura cílového procesoru pro vaši aplikaci typ procesoru Arm, balíček aplikace musí obsahovat pouze binární soubory arm nebo soubory typu image. Pokud balíček obsahuje binární soubory x64 nebo x86 nebo typu obrázku, test selže.
5. Podporovaný test rozhraní API
Zkontroluje, jestli aplikace používá všechna nevyhovující rozhraní API.
pozadí
Desktop Bridge aplikace můžou využívat některá starší rozhraní API Win32 spolu s moderními rozhraními API (komponenty UPW). Tento test identifikuje spravované binární soubory, které používají nepodporovaná rozhraní API.
Podrobnosti o testu
Tento test zkontroluje všechny komponenty UPW v aplikaci:
- Ověřuje, že každý spravovaný binární soubor v balíčku aplikace nemá závislost na rozhraní API Win32, které není podporováno pro vývoj aplikací pro UPW, tím, že zkontrolujete tabulku adres importu binárního souboru.
- Ověřuje, že každý spravovaný binární soubor v balíčku aplikace nemá závislost na funkci mimo schválený profil.
Nápravná opatření
To je možné opravit tak, že zajistíte, aby byla aplikace zkompilována jako produkční verze, a ne jako verze pro ladění.
Poznámka
Ladicí sestavení aplikace tento test nesplní, i když aplikace používá pouze rozhraní API pro aplikace UWP. Projděte si chybové zprávy a identifikujte rozhraní API, které není povolené pro aplikace UWP.
Poznámka
Aplikace C++, které jsou vytvořené v konfiguraci ladění, selžou v tomto testu, i když konfigurace používá pouze rozhraní API ze sady Windows SDK pro aplikace pro UWP. Další informace najdete v tématu Alternativy k rozhraním API pro Windows v aplikacích pro UPW.
6. Test řízení uživatelských účtů (UAC)
pozadí
Zajišťuje, že aplikace nevyžaduje řízení uživatelských účtů za běhu.
Podrobnosti testu
Aplikace nemůže žádat o zvýšení oprávnění správce ani o přístup UIAccess podle zásad Microsoft Storu. Zvýšená oprávnění zabezpečení nejsou podporována.
Nápravné akce
Aplikace se musí spouštět jako interaktivní uživatel. Podrobnosti najdete v přehledu zabezpečení automatizace uživatelského rozhraní .
7. Ověřování metadat prostředí Windows Runtime
pozadí
Zajišťuje, že komponenty, které se dodávají v aplikaci, odpovídají systému typů UPW.
Podrobnosti o testu
Tento test vyvolá řadu příznaků souvisejících s použitím správného typu.
Nápravná opatření
-
atributu ExclusiveTo
Ujistěte se, že třídy UWP neimplementují rozhraní, která jsou označena jako ExclusiveTo pro jinou třídu. -
Správnost obecných metadat
Ujistěte se, že kompilátor, který používáte ke generování typů, je up-to-date se specifikacemi UPW. -
vlastnosti
Ujistěte se, že všechny vlastnosti ve třídě UPW mají metoduget(setmetody jsou volitelné). U všech vlastností se ujistěte, že typ vrácený metodougetodpovídá typu vstupního parametru metodyset. -
Umístění typu
Ujistěte se, že metadata pro všechny typy UPW jsou umístěna v souboru .winmd, který má nejdelší název odpovídající oboru názvů v balíčku aplikace. -
citlivost na velikost písmen v názvu typu
Ujistěte se, že všechny typy UPW mají v balíčku aplikace jedinečné názvy bez rozlišování velkých a malých písmen. Také se ujistěte, že v balíčku vaší aplikace není žádný název typu UWP používán jako název oboru názvů. -
správnost názvu typu
Ujistěte se, že globální obor názvů ani obor názvů nejvyšší úrovně Windows neobsahuje žádné typy UPW.
8. Testy funkcí zabezpečení systému Windows
Změna výchozí ochrany zabezpečení Windows může ohrozit zákazníky.
8.1 Zakázaný analyzátor souborů
Pozadí
Některé soubory byly aktualizovány důležitými vylepšeními zabezpečení, spolehlivosti nebo jiných vylepšení. Aplikace Windows Desktop Bridge musí obsahovat nejnovějších verzí těchto souborů, protože zastaralé verze představují riziko. Sada Windows App Certification Kit blokuje tyto soubory, aby se zajistilo, že všechny aplikace používají aktuální verzi.
Podrobnosti testu
Zakázaná kontrola souboru v certifikační sadě aplikací pro Windows v současné době kontroluje následující soubory:
-
\js\veapicore.js Bing.Maps.JavaScript
Tato kontrola obvykle selže, když aplikace používá verzi "Release Preview" souboru místo nejnovější oficiální verze.
Nápravná opatření
Pro opravu použijte nejnovější verzi Bing Maps SDK pro aplikace pro UWP.
8.2 Podepisování privátního kódu
Testuje existenci binárních souborů pro podepisování privátního kódu v rámci balíčku aplikace.
pozadí
Soubory podepisování privátního kódu by měly být soukromé, protože se můžou používat pro škodlivé účely v případě ohrožení zabezpečení.
Podrobnosti testu
Kontroluje soubory v balíčku aplikace, které mají příponu .pfx nebo .snk, které by značily, že jsou zahrnuty privátní podpisové klíče.
Nápravná opatření
Odeberte z balíčku všechny podpisové klíče privátního kódu (například soubory .pfx a .snk).