如何模拟全新安装?

时间:2013-01-04 12:50:56

标签: ios xcode

我的应用程序在从App Store下载时崩溃,但从未在Xcode中执行时崩溃。 一点背景...... 我正在开发一个访问用户联系人的应用程序。该应用程序从我的服务器下载电话号码,它会检查该联系人的姓名。 我已经执行了10亿次应用程序并且它永远不会崩溃,但我将它上传到苹果商店并且崩溃了,我查看了崩溃日志,它在检查联系人姓名时崩溃,方法ABCMultiValueCopyValueAtIndex ,我无法在Xcode上复制,我尝试卸载应用程序,但它永远不会崩溃!这是相同的代码,毫无疑问。

所以问题是,当手机中安装了“Freshly”应用程序时,情况会有所不同,但我无法复制这种“新”状态。

我怎么能这样做?如果我让应用程序访问我的联系人,它永远不会问我......

3 个答案:

答案 0 :(得分:0)

  

如何模拟全新安装?

为此,您只需从设备中删除您的应用,然后再次运行即可。它将“新装”安装。另外,不要忘记清理项目,以便从头开始构建。

在任何情况下,与您正在测试的版本相比,您的问题更有可能来自设备上的其他iOS版本。如果您在调用ABCMultiValueCopyValueAtIndex时提供一些代码,则有助于理解事情。

答案 1 :(得分:0)

唯一安全的方法=将设备重置为出厂设置。

但是,通常只需卸载应用程序并重启设备即可。 在谈到推送通知时,卸载后需要3天才能将其删除。 重置钥匙串可能很棘手,最好从应用程序内部完成。

另请注意,您通常可以通过更改要保存数据的文件/钥匙串条目(等)的名称来模拟相同的行为,因此重新启动应用程序时将不会加载数据。

答案 2 :(得分:0)

如果您使用钥匙串存储任何内容,则删除该应用程序将不会清除这些条目。如果您的Bundle ID没有任何关系,即推送通知,您可以将Bundle Id更改为其他内容,将其作为新应用程序运行

显然,一旦解决了问题,你就需要将其改回来