Aplikace do Windows Store mohou vývojáři samozřejmě publikovat sami na svůj účet, ale stále častější je scénář, kdy vyvinete aplikaci pro zákazníka (třetí stranu), předáte mu balíček a necháte jej, ať ji publikuje do Storu sám. Není to složité, ale zároveň to není ani několik kliknutí ve Visual Studiu. Pojďme si postup projít.
[Aktualizace 13. 4. 2016] Visual Studio 2015 Update 2 mění způsob tvorby balíčku a úprava souboru CSPROJ.USER už není potřeba. Pokud takto upravený soubor už máte, musíte ji dokonce odebrat, jinak nebude build fungovat.
První krok musí udělat vlastník účtu – založit aplikaci ve Windows Dev Center. Po přihlášení na Dashboard je potřeba kliknout na Create a new app a zvolit si unikátní název („rezervovat ho“).
Následně vybere v menu aplikace položku App identity.
A ze souhrnného výpisu vám vykopíruje (nebo udělá screenshot) tří základních údajů:
- Package/Identity/Name
- Package/Identity/Publisher
- Package/Properties/PublisherDisplayName
Pak už je řada na vás, autorovi aplikace. Ve Visual Studiu otevřete manifest a přejděte na záložku Packaging.
Jsou tam předvyplněné vaše údaje, které je potřeba změnit. Klikněte na tlačítko Choose Certificate… vedle kolonky Publisher a v rozbalovátku zvolte Create test certificate…
V dialogu potom nahraďte Publisher Common Name za hodnotu Package/Identity/Publisher (bez úvodního CN=), kterou jste získali od vlastníka účtu.
Heslo není třeba vyplňovat, protože Windows Store stejně certifikát nakonec po publikování odebere a nahradí svým „oficiálním“. Potvrďte OK.
Visual Studio se vás zeptá, zda chcete nahradit dočasný certifikát, což je přesně to, po čem toužíme, takže potvrdíte Yes.
Záložka Packaging by nyní již měla být aktualizovaná novým Publisherem. Zbývá ještě doplnit zbylé informace ze Storu.
- Package name bude Package/Identity/Name.
- Package display name musí odpovídat rezervovanému názvu aplikace.
- Publisher display name bude Package/Properties/PublisherDisplayName.
- Package family name odvodí Visual Studio samo.
Nyní můžete začít generovat balíčky. Klikněte pravým tlačítkem na projekt, zvolte Store a Create App Packages…
Kdybyste v prvním kroku průvodce zvolili Yes, budete se muset přihlásit vývojářským účtem. Tomu se chceme vyhnout (nemáme ho k dispozici), proto vybereme No.
Vyberte architektury, pro něž chcete balíček generovat (v tomto případě pouze x64) a ponechte Debug (schválně, je to totiž rychlejší a v této fázi ještě Release nepotřebujeme – pochopíte za okamžik). Klikněte na Create a počkejte, než Visual Studio vyplodí balíček.
Když se teď podíváte na výsledek (do složky AppPackages), zjistíte, že máte balíček připravený pro sideloading, ale nikoliv pro upload na Store (chybí APPXUPLOAD).
Finta, která zajistí vytvoření správného balíčku, se schovává o úroveň výš, v souboru s příponou CSPROJ.USER. Ten vzniknul až při prvním vygenerování Debug konfigurace a nyní ho již můžeme editovat.
Otevřte jej tedy v textovém editoru a do elementu <PropertyGroup> přidejte:
<
UapAppxPackageBuildMode
>CI</
UapAppxPackageBuildMode
>
Po uložení už stačí jenom vrátit se do Visual Studia, znovu otevřít generování balíčku pro Store (ponechat zvolené No) a vybrat Release konfiguraci.
Create teď už bude trvat déle, ale na konci získáte ve složce AppPackages kýžený soubor APPXUPLOAD.
Ten potom nasdílíte s vydavatelem a on jej bude moct nahrát do Storu pod svým účtem (Start your submission –> Packages).
Díky! Ten malý update nahoře mi pomohl vyřešit problém :-)