发布Windows应用时。在Visual Studio里点击"发布“,将应用与Microsoft Store关联时,一直提示网络错误。
查了一下论坛,发现之前也经常出现,但我是第一次遇到。
不能就这样一直被卡着呀,研究了一下,还是有方法手动进行关联的。
总结一下其实就两步:设置证书,更新Package.StoreAssociation.xml并加到项目中。
临时解决方案:手动将应用与Microsoft Store关联。
第一步: 使用开发者账号登录微软应用商店后台 (https://partner.microsoft.com) 。进入要发布的应用页面,找到”Product Identity"里的应用标识。接下来的步骤中我们将用到下图里标识的几项信息。
第二步: 设置证书或者新建一个
(1)打开Package.appxmanifest,进入“打包”页面,点击”选择证书…“按钮。
如果你之前任何应用关联过Microsoft Store,可以选择“从存储区选择…”,找到之前未过期的证书使用即可。注意证书发布者一定要与你当前开发者账号的发布者一致。
(2)如果以前未关联过或者证书已失效,则可以选择“创建…“,来新建一个自签名的证书。发布者公用名称就填写图一里的发布者Id。密码不用填写,点击”确定“保存即可。
重点:发布者公用名称一定要与你的开发者ID一致,否则在提交到Store审核时不会通过。
第三步: 在项目文件夹里,创建一个新文件Package.StoreAssociation.xml(内容如下),与项目中的Package.appxmanifest要在同目录,并将其添加到项目中。接下来你需要更新xml中的信息: (1) MainPackageIdentityName (2) Publisher, (3) PublisherDisplayName, (4) ReservedName。 这几项信息必须与后台里应用页面里的一致(参见图一中的四个标识信息)。
- 根据项目需要,可以更新xml中的Language节点
下面是一个Package.StoreAssociation.xml的简洁版。(完整版里包括了所有支持的语言列表)
<StoreAssociation xmlns="http://schemas.microsoft.com/appx/2010/storeassociation">
<Publisher>CN=9CAABBCC-DDEE-FFGG-MMNN-AABBCCDDEEFF</Publisher>
<PublisherDisplayName>Fake Studio</PublisherDisplayName>
<DeveloperAccountType>MSA</DeveloperAccountType>
<GeneratePackageHash>http://www.w3.org/2001/04/xmlenc#sha256</GeneratePackageHash>
<ProductReservedInfo>
<MainPackageIdentityName>12345Microsoft.FixNow</MainPackageIdentityName>
<ReservedNames>
<ReservedName>Fix Now</ReservedName>
</ReservedNames>
</ProductReservedInfo>
<SupportedLocales>
<Language Code="en" InMinimumRequirementSet="true"/>
</SupportedLocales>
<AccountPackageIdentityNames> </AccountPackageIdentityNames>
<PackageInfoList>
<PackageInfo>
<OsMinVersion>0.0.0.0</OsMinVersion>
<PackageArchitecture>X86</PackageArchitecture>
<PackageMaxArchitectureVersion>1.0.0.0</PackageMaxArchitectureVersion>
</PackageInfo>
</PackageInfoList>
</StoreAssociation>
第四步: 打包并发布
在Visual Studio: 项目-> 发布 -> 创建应用程序包…
上述方法已经测试过,可以将应用正常打包,通过本地验证,上传到应用商店并通过审核。
问题跟踪:
https://developercommunity.visualstudio.com/t/cannot-associate-app-with-store/10781321