解决Visual Studio无法连接微软商店关联应用的问题

问题背景:

使用Visual Studio开发Windows应用完成后,进行应用打包时需要先将应用与Microsoft Store进行关联,这个步骤可以通过项目右键菜单的发布选项进行,但是有时候在关联窗口会出现“意外的网络错误”或者无法连接开发者账号的情况,报错内容可能如下图,英文错误为:“An unexpected network error has occurred. The app list cannot be refreshed. Please retry by pressing the Refresh button”:

如果此时是因为网络问题或者合作伙伴中心不能访问造成的,就先解决网络问题并确保可以正常访问合作伙伴中心。如果可以正常访问合作伙伴中心,但是应用关联时还是报错,可以尝试以下方法:

1、更新Visual Studio到最新版本

2、在Visual Studio中退出账户并重新登录,并尝试清除VS缓存,使用命令:devenv /resetuserdata

3、使用旁加载方式发布,但这种方式需要配置证书,没有验证过

4、重启电脑、修改网络设置、连接其他网络

此问题自2023年就在微软网站上提出,可以查看以下链接:https://learn.microsoft.com/en-us/answers/questions/1192769/an-unexpected-network-error-has-occurred-the-app-l ,但一直没有得到解决。包括链接里面的方法偶尔可以有效,如果都尝试过后仍然无法解决,可以使用以下方法,此方法经过一个WPF应用(使用Windows应用程序打包项目进行发布)实践验证。

此方法使用的前提条件:

1、合作伙伴中心可以正常访问

2、已经在合作伙伴中心创建了应用,保留了应用名称即可

3、有一个以前已经成功关联过的应用项目

此方法是基于对比关联应用前后项目文件的变化实现的,因为应用发布时只有第一次需要进行应用关联,之后代码更新后直接进行编译打包即可,所以只需将项目文件更新为关联之后的内容即可。

操作步骤如下

1、增加商店关联配置文件

此文件以“Package.StoreAssociation.xml”命名,可以从以前关联过的项目中进行复制,此文件中“AccountPackageIdentityNames”节点的内容为所有关联的应用的ID,根据复制此文件的项目是否是最近关联的项目来确定列表是否完整(我在此处增加了之前所有已发布的应用,不修改是否可以成功没有进行测试)。

关键修改1:ProductReservedInfo节点为保留的应用的信息,需要修改更新,格式及内容如下:


<ProductReservedInfo>
    <MainPackageIdentityName>包ID名称</MainPackageIdentityName>
    <ReservedNames>
      <ReservedName>保留名称</ReservedName>
    </ReservedNames>
  </ProductReservedInfo>

其中【包ID名称】可以在合作伙伴中心保留的应用产品标识中查询,保留名称就是创建应用时保留的应用名称。

关键修改2:此文件末尾的节点“PackageInfoList”的appId修改为此应用的Store ID,可以在应用产品标识中查询,格式及内容如下:

<PackageInfoList LandingUrl="https://devcenterapi.dce.mp.microsoft.com/dashboard/Application?appId=XXXXXXXX" />

2、修改项目文件

将第1步的文件添加到项目中,可以使用菜单添加现有项命令添加,或者修改Windows应用程序打包项目的项目文件(后缀为:.wapproj),在其中的“ItemGroup”中增加以下内容:

<None Include="Package.StoreAssociation.xml" />

3、修改包清单配置文件

用文本编辑器打开文件“Package.appxmanifest”,修改开始的“Identity”节点及“Properties”内容,格式及内容如下:

  <Identity 
    Name="包ID名称"
    Publisher="PublisherID"
    Version="1.0.0.0" />

  <Properties>
    <DisplayName>显示名称</DisplayName>
    <PublisherDisplayName>PublisherDisplayName</PublisherDisplayName>
  </Properties>

其中的“包ID名称”、“PublisherID”、“PublisherDisplayName”可以在合作伙伴中心保留的应用产品标识中查询,“显示名称”即为保留的应用名称。

以上内容修改完成后,按正常步骤直接进行【发布】->【创建应用程序包】即可选择使用保留名称分发应用程序,并且不会弹出应用列表选择窗口,之后就可以按正常流程进行打包上传到商店等待审核。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值