在安装后,内部应用消失了

45

我目前正在为客户构建一款iPhone应用程序,该应用程序将在公司内部分发。我的客户刚刚在Apple上创建了企业开发者帐户。

我为客户创建了一个网站,通过苹果公司提供的说明,可以通过无线方式下载应用程序的测试版本:Distributing Enterprise Apps for iOS 4 Devices。这些测试是通过我的标准帐户使用包含其设备UDID列表的Adhoc配置文件完成的。

现在,我正在尝试使用他们的企业帐户部署应用程序。我创建了内部预配文件。我还为应用程序创建了存档,并使用此配置文件创建了.ipa文件以进行分发。

当我尝试下载应用程序时,出现了问题。当我转到创建的网站以下载应用程序时,我可以看到应用程序正在我的iPhone上下载,图标下方的文字显示为:“正在加载...”。然后,文字更改为“正在安装...”。一旦进度条完成,应用程序就会消失。我还注意到在我设备上安装了内部预配文件。

我在多个设备上反复执行了此过程,包括我用于测试此应用程序的设备和那些我甚至没有使用过此应用程序的设备。我甚至尝试在一个设备上删除所有预配文件。同样的过程发生,内部预配文件会自动重新安装。

到底出了什么问题或者我做错了什么?

谢谢。

7个回答

63

我曾经遇到过一样的问题,是在我们公司内部的一个应用程序中出现。原因是应用程序清单文件中指定的捆绑标识(bundle ID)有误。我修复了捆绑标识后,应用程序可以正常安装。


我会尝试这个,因为我刚刚注意到我也有一个小错误。我会报告我的结果。 - RoLYroLLs
1
这对我来说就是问题所在。我的清单文件上的bundleID与我用于ipa文件的不同。谢谢! - RoLYroLLs
2
我必须说,在这里能够得到这样的答案是Stackoverflow绝对的精华所在!否则我可能要花费数小时来苦思冥想了!谢谢! - Craig
1
你如何找到清单文件并在哪里进行更改?有人能指出给我吗? - Arjun Kalidas
1
希望苹果至少能在这个问题上明确地给出一个错误提示。 - gabuchan

10
我的问题在于我的下载plist文件的bundleID与我的代理程序的bundleID不同。修复下载plist文件后问题得到解决。
或者,重新启动也可以解决问题,但每次都很麻烦。

这也发生在我身上过!唯一的区别是我的情况下有一个字母大小写不同! - Joost Evertse
你说的下载 plist 文件是什么意思? - Arjun Kalidas
你可以在plist中将bundleID设置为$(PRODUCT_BUNDLE_IDENTIFIER),这样它就指向了General->Bundle Identifier,在未来,你只需要在一个地方更改bundleID即可。 - Abhinav

4

我在应用程序信息列表文件中使用了包ID - com.myname.{appId}。 但是我的OTA清单文件中使用了com.myname.*,因此我的安装失败了。 当我将两个地方的com.myname.APPName都改为相同的时候,它就像智能一样工作了。


你如何更改OTA清单文件。任何帮助将不胜感激。 - Arjun Kalidas

3

**

我曾经遇到过完全相同的问题,并通过以下步骤解决了它。

**

问题描述: 需要澄清的是,问题(应用程序安装不正确 - 安装后图标消失)仅发生在iOS设备上(相同应用程序构建的Android版本正常工作)。
问题来源: 在我的情况下,问题是由于我使用的测试iPad设备未注册(添加)到我的应用程序正在使用的开发人员预配配置文件引起的。
教训: 这意味着iOS开发人员应用程序无法安装在任何给定的测试设备上,直到将此设备添加到预配配置文件(PP)中为止。重要信息还是,一旦将设备添加到PP中,就需要生成新的PP并使用该新的PP对应用程序进行签名以完成握手。
修复步骤:
  1. 登录到Apple Developer https://developer.apple.com
  2. 导航至“证书、标识符和配置文件” ->“设备”
  3. 在确认您的设备不在此列表中后,单击“+” enter image description here
  4. 填写测试设备的“名称”和“UDID”,然后单击“继续” enter image description here
  5. 在设备添加到列表后,通过导航至“配置文件” ->“开发” ->单击现有PP ->“编辑” ->在“设备”部分中选中新添加的设备 ->单击“生成” ->“下载” ->“完成”来生成新的PP enter image description here
  6. 使用新下载的PP对新的开发应用进行签名
  7. 在测试设备上安装新的应用程序
  8. 庆祝成功

这是一份非常有用的逐步指南。谢谢。不过我有一个建议:当我通过添加新设备更新我的部署配置文件时,我遇到了问题,但显然应用程序仍然使用旧配置文件构建,因为它无法安装在最近添加的设备上。您能否添加一份关于如何在更改后更新配置文件的指南? - Jules
嗨,朱尔斯,很高兴有人发现它有用!关于你的问题- 你最初是构建/签署你的应用程序吗?因为你所要做的就是使用你已经下载的新PP,在添加新的测试设备后重复这个过程。 - marika.daboja

1

设备的操作系统版本是否低于应用程序的部署目标操作系统级别?

如果是这样,请在针对目标的Ad Hoc构建设置中降低应用程序的部署目标,或升级设备的操作系统。


0

如果其他人也遇到了这个问题,请确保您已经注册了您正在测试的设备,并且该设备也已经注册到您正在使用的配置文件中。


我已经注册了我的设备。但是还没有注册到供应商,我该怎么做? - Peter Westerlund
@PeterWesterlund 当您创建配置文件时,只需将其创建为开发环境,然后从您的列表中选择一个或多个设备。要将一个或多个设备添加到您的设备列表中,请进入您苹果开发者账户中的“设备”部分。 - Piero Alberto

0
重新启动设备解决了我的问题。重新启动设备后,应用程序再次出现。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接