ios – 测试更新时的TestFlight警报:您已经安装了此应用程序

前端之家收集整理的这篇文章主要介绍了ios – 测试更新时的TestFlight警报:您已经安装了此应用程序前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使用TestFlight从现场App Store应用程序构建测试到RC的更新场景,但是TestFlight让我警惕“你已经安装了这个应用程序,你要替换…”(见下面的截图).确认后,App Store版本的所有数据都已经没了.

我做的步骤:

>从App Store安装实时应用程序
>登录并进行一些操作以获取应用程序和钥匙串中的数据
>转到TestFlight iOS应用程序
>点击TestFlight中的“安装”按钮 – >警报“您已经安装了此应用程序”出现
>如果我点击选择安装,安装新的版本

结果:

>当我再次打开应用程序时,应用程序的内容包括共享容器(与扩展程序共享的数据)和钥匙串)完全擦除

编辑:TestFlight中的警报与任何应用程序一起出现(我已尝试过不同开发人员帐户的多个不同的应用程序).实际的数据删除仅在某些情况下发生.

我的问题:

这是TestFlight的预期行为,还是我的应用程序有问题吗?我不知道可能导致任何问题的版本之间的任何更改.

我相信这是没有发生的(最后一次我在几个星期前尝试过).

我找不到有关TestFlight应用程序行为或更改的任何文档或发行说明.

有没有人遇到同样的问题?或者您是否知道任何描述此行为的资源?

感谢任何答案!

解决方法

经过长时间的研究,试验和错误,创建雷达并发布更新到App Store,我有一个答案:

警报总是与丢失数据无关.

>从TestFlight安装的任何应用程序始终显示有关可能丢失数据警告的警报.
>对于我尝试过的多个应用程序,这是真的.

当使用TestFlight构建覆盖应用程序时,标识符FORVendor发生更改.

>当App App版本的应用程序安装并使用从TestFlight构建覆盖时,[[UIDevice currentDevice] identifierForVendor]的结果发生更改
>这是意想不到的,因为文档中没有提到(见下文)
>在我的情况下,identifierForVendor的意外更改导致“数据丢失”,这并不是实际的数据丢失,而是仅在您无法调试的TestFlight构建中发生,所以很难找到问题.

[[UIDevice currentDevice] identifierForVendor]的文档说:

The value in this property remains the same while the app (or another app from the same vendor) is installed on the iOS device. The value changes when the user deletes all of that vendor’s apps from the device and subsequently reinstalls one or more of them. The value can also change when installing test builds using Xcode or when installing an app on a device using ad-hoc distribution.

原文链接:/iOS/335912.html

猜你在找的iOS相关文章