无法在一部 iPhone 上安装同一应用程序的两个版本
我的应用程序有两个版本。我尝试在 iPhone 上保留每个版本的副本以供测试之用。
在我的构建设置中,我的捆绑包显示名称为 ${PRODUCT_NAME},并且我为应用的每个版本指定了不同的产品名称(例如“v92”和“v10”)。当我将每个版本安装到我的 iPhone 上时,它们都以不同的名称并排出现,但是一个可以正常工作,另一个会在打开后立即关闭。如果我删除正常工作的版本,另一个将开始工作。
有谁知道发生了什么事吗?
I have two versions of my app. I'm trying to keep a copy of each on my iPhone for testing purposes.
In my build settings, my bundle display name is ${PRODUCT_NAME} and I've given each version of my app a different product name (eg "v92" and "v10"). When I install each version to my iPhone, they both appear side by side with different names, however one will work normally, and the other will immediately close the moment it's opened. If I delete the version that works normally, the other will start working.
Does anyone know what's going on?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我认为应用程序在设备上是通过应用程序 ID 而不是产品名称来区分的。我不知道你如何能够仅通过更改产品名称来安装两个应用程序。当我错误地安装了具有相同应用程序 ID 但不同产品名称的不同应用程序时,原始应用程序被覆盖。
尝试为新版本创建一个单独的应用程序 ID,仅用于测试。这可能会解决您的问题,但请确保在提交应用程序时使用正确的应用程序 ID。
编辑:如果您在应用程序中执行一些特定于应用程序 ID 的操作(例如 APNS),这可能不是正确的解决方案。
I think the apps are distinguished on the device by the App Id and not the product name. I dont know how you were able to install two apps only by changing the product name. When i mistakenly installed a different app with same app id but different product name the original app was overwritten.
Try creating a separate app id for the new version only for testing. That might solve your problem but make sure you use the correct app id when you submit your app.
EDIT: It might not be the right solution if you are doing some app id specific stuff (like APNS) in you app.
我也遇到过这个问题,最后解决了。我知道解决方案与更改信息属性列表中的某些内容有关,但我不确定到底是什么。我建议确保以下所有内容对于您的两个版本都是不同的:
捆绑包显示名称
可执行文件
包标识符
捆绑包名称
I ran into this one too and eventually solved it. I know the solution had to do with changing something in the information property list, but I'm not sure exactly what. I would suggest making sure that all of the following are different for your two versions:
bundle display name
executable file
bundle identifier
bundle name
至少您可以在开发者帐户中创建两个应用程序 ID 和两个配置文件。然后您就可以像安装两个不同的应用程序一样安装两个版本。这是一个丑陋的解决方案,但它绝对有效。
At least you can create two app id's and two provisioning profiles in your developers account. Then you'll be able to install your 2 versions like a two different apps. It's an ugly solution, but it definitely works.