我有两个iphone设备(4s和5)连接到我的电脑,我试图在两个设备上安装一个应用程序。它在iphone 5上安装得很好,但它给出了一个错误“应用程序无法验证”。在试图安装到iPhone 4s设备时。

两个设备的udid都已添加到为应用程序生成的配置配置文件中。

另外,补充说明一下,我刚刚在我的4s设备上把我的iphone版本升级到8.1.3。但我不确定这个错误是否与此有关。

任何帮助在这方面将非常感激。我已经被这个问题困扰了一段时间了。

编辑:

我刚刚把它连接到另一个iPhone设备上,问题似乎又出现了。基本上,这意味着应用程序,出于某种原因,只安装在我已经使用了一段时间的手机,而不是在任何其他手机。同样,我非常确定配置配置文件包含所有这3个设备的udid。


当前回答

我注意到申请无法被验证。Raise up是因为在您的设备中已经安装了具有相同bundle标识符的应用程序。

我遇到这个问题是因为在我的设备上有我从应用商店下载的应用程序。和我测试它的更新版本从Xcode。我使用相同的标识符,是live应用程序和我的开发测试应用程序。所以我只是从我的设备中删除app-store live应用程序,这个错误将被修复。

其他回答

我最近也遇到过类似的事情。我把我的iPhone升级到8.1.3版本,几天前在同一台Mac上安装在同一台iOS设备上的应用程序开始收到来自Xcode的“应用程序无法验证”错误消息。

我从设备上删除了应用,重新启动Xcode,应用随后安装在设备上,没有任何错误消息。不确定删除应用程序是解决问题的方法,还是因为“月相”。

工作测试方案,无需删除应用程序:

看起来AppStore分发配置文件或iOS分发证书具有特殊权限,“无法验证…”问题不适用于它们。它们将始终覆盖以前的证书。

换句话说:AppStore发布将成功安装,即使已经安装(测试、临时或企业)的应用程序已经由不同团队的证书签署。

如果你很幸运,并且之前已经将应用上传到了你有问题的证书所拥有的AppStore帐户,那么事情就很简单了:只需从AppStore下载并安装应用。

当它安装-应用程序证书将与您想要测试的证书相同,问题就会消失。

如果你的应用还没有在AppStore上,iTunesConnect测试版就可以拯救你了:

免责声明:我没有测试这个,但由于cert和prev与AppStore发布相同,我打赌它是有效的:

使用AppStore配置文件(iOS分发证书)存档应用,并上传到iTunesConnect(上传到与配置文件中包含的开发团队相同的帐户,而不是你想运行的帐户)。 邀请拥有你想要运行的设备的人(你自己?)进行beta测试。 从iTunes connect beta下载并安装应用程序。 现在可以安装测试版本了。

我也遇到了同样的问题。删除应用程序不起作用,但当我尝试删除另一个应用程序,这是当前的“父”(我从前一个应用程序复制了整个项目,修改了一些url和图像,然后我点击“运行”,看到不愉快的“无法验证”对话框)。这个问题似乎与项目的配置、代码签名和/或一些配置有关。非常棘手。

我通过在xcode中将构建系统更改为遗留系统来解决这个问题。

我也遇到了同样的问题,但上面提到的解决方案对我不起作用。即使我之前没有在设备上的应用程序,我在我的设备上部署时得到了这个错误。

怎么做:

简单地,转到菜单文件>项目设置,在共享项目设置中,将构建系统从“新构建系统(默认)”更改为“Lagacy构建系统”。

给那些没有使用RubyMotion并且认为删除应用是不可接受的人(比如,你想做升级测试)。看看下面这些来自苹果的文档:

https://developer.apple.com/library/ios/technotes/tn2319/_index.html

看起来他们在8.1.3修改了一些东西来检查这个新规则。

修复

“[添加]第二个圆括号中记录的已安装应用程序的application-identifier值,到正在安装的应用程序的前一个application-identifier授权数组值(通过重新命名或重新构建它),并请求新的特殊配置配置文件,如下所示。”

<key>previous-application-identifiers</key>
<array>
    <string>{Your Old App ID Prefix}.YourApp.Bundle.ID</string>
</array>

编辑:

为了做到这一点,您需要特殊的配置文件。你可以向苹果请求这些: “要启用与以前的应用程序标识符授权的签名,需要新的特殊配置文件,可以通过访问联系美国页面并请求它们来获得。”(从上面链接的文档)。