appxmanifest 中的 PhoneProductId:从 Silverlight 升级到运行时与地图服务应用程序 ID (wp RT 8.1)

PhoneProductId in appxmanifest: Upgrade from Silverlight to Runtime vs. Map Service Application Id (wp RT 8.1)

我正在将应用程序从 Windows Phone Silverlight 8.1 更新到 WP Runtime 8.1,Package.appxmanifest 中的 "PhoneProductId" 出现问题:

1) 要么我提供旧版 Silverlight 应用程序的 ID。然后我可以通过 "AppDeployCmd.exe" /targetdevice:de /update MyApp_1.2.3.4_AnyCPU.appxbundle" 在控制台中更新它,不会丢失任何用户数据。但是当我 运行 MapRouteFinder.GetDrivingRouteAsync(...) 我收到 InvalidCredentials 错误,因为我没有提供正确的地图服务应用程序 ID,在 RT 中需要替换 PhoneProductId(在 Silverlight 中,它需要通过 c# 与身份验证令牌一起提供。

2) 或者我提供Map Service Application Id,可以正常使用MapRouteFinder.GetDrivingRouteAsync。但是由于两个应用程序版本中的 PhoneProductIds 不同,我无法更新应用程序(控制台中出现错误消息 "Application is not installed")。如果不先卸载它,我也无法 /install ("Could not register package")。

有人能解决这个难题吗?

我现在已将 2 号解决方案上传到商店,GetDrivingRouteAsync 在上传前运行。更新确实有效,没有丢失任何用户数据,所以这里没问题。

但是,当使用商店中的版本时,GetDrivingRouteAsync 再次无法正常工作(与解决方案编号 1 中的问题相同)。

似乎与这个问题完全相同: