为什么 ARKit 应用程序在几天后停止工作?

Why does ARKit app stop working after a few days?

我在 Unity 中为 iOS 开发了一个简单的 ARKit 应用程序。它工作得很好,但有一个奇怪的问题:几天后它停止工作。因此,当我单击 iPhone 上的应用程序图标时,它会打开应用程序一毫秒并立即退出。如果我再次重新安装该应用程序,它会像以前一样完美运行。

为什么会这样?有什么办法可以预防吗?我在Xcode中使用“个人团队”,会不会是这个原因?

Unlike in Android, you can’t install any app on an iOS device. It has to be signed by Apple first. However, when you’re developing an app, you probably want to test it before sending it to Apple for approval. Provisioning profile act as a link between the device and the developer account. During development, you choose which devices can run your app and which app services your app can access.

A free provisioning profile is downloaded from your developer account and embedded in the app bundle, and the entire bundle is code-signed. A Development Provisioning Profile must be installed on each device on which you wish to run your application code. If the information in the provisioning profile doesn’t match certain criteria, your app won’t launch.

Provisioning Profile 过去的有效期为 90 天,但现在缩短为 7 天,从创建配置文件的时间算起。这意味着 7 天后,您的 iPhone 应用将停止工作。

Apple says: You may create up to 10 App IDs every 7 days.

这就是您的 ARKit 应用在 7 天后停止工作的原因.

在此处阅读 Unity 文档:Getting started with iOS development

如果您的应用在不到 7 天或超过 7 天后停止运行 – 这绝对是一个 签名错误

如果您想更改现有应用程序的配置文件,read this useful SO post

有几个开发者项目:

  • iOS 开发者计划 ($99)
  • Apple 开发者计划 个人 ($99)
  • 面向组织的开发人员企业计划 ($299)
  • iOS 面向高等教育机构的开发者大学计划(免费)

看看这篇文章Choosing a Membership

iOS Developer Program () also allows you use Ad Hoc for free.

Ad Hoc Distribution Provisioning Profile 让您可以在 iTunes Connect 中配置的 100 台不同设备上测试您构建的应用程序。