为什么我可以直接在我的设备上安装应用程序商店分布构建? [英] How come I can install an app store distribution build directly on my device?

查看:363
本文介绍了为什么我可以直接在我的设备上安装应用程序商店分布构建?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是IM pression下,这是不可能直接在测试设备​​上安装应用程序商店分发版本(不通过实际的应用程序商店去)。我发现了以下注释多个引用苹果(虽然我无法找到在iOS应用分发指南的当前版本的说明本身):

I was under the impression that it was impossible to install an app store distribution build directly on a test device (without going through the actual App Store). I found multiple references to the following note by Apple (though I could not find the note itself in the current version of the iOS App Distribution Guide):

App Store的预置描述文件不允许构建的应用程序被苹果设备上安装的分布。要在设备上安装您的分发准备的应用程序,你必须创建一个特设的provisioning profile。

现在考虑以下几点:我有一个特设发行配置文件和应用商店发行配置文件。专案配置文件包含配置的设备列表,应用商店个人资料不。我的(无jailbrake)设备被包括在特设轮廓所供应设备。我的构建与应用商店配置文件签署。由此产生的.ipa文件是的提交到App Store (批准 - 但它是不公开的还)。当我查看.ipa文件的包装内容,我看到embedded.mobileprovision的确是应用程序商店的个人资料(不调配的设备清单)。当我拖到此配置文件,我的X code主办单位,我得到一个错误,无法安装的配置文件,因为该设备没有在配置文件中包括(如预期)。然而,当我拖动.ipa文件到我的X code组织者,应用在设备上安装(可以在设备上后打开)。我要确保有安装在设备上相同的应用程序的任何其他副本后尝试这个。当我使用未包含在ad hoc配置文件(即使包含的.ipa没有调配的设备列表中的应用程序商店配置文件)。

Now consider the following: I have an Ad Hoc Distribution provisioning profile and an App Store Distribution provisioning profile. The ad hoc profile contains a list of provisioned devices, the app store profile doesn't. My (no jailbrake) device is included in the provisioned devices in the ad hoc profile. My build was signed with the app store profile. The resulting .ipa file was submitted to the App Store (and approved - but it is not publicly available yet). When I view the package contents of the .ipa file, I see that the embedded.mobileprovision is indeed the app store profile (without the provisioned devices list). When I drag this profile to my Xcode Organizer, I get an error that the profile cannot be installed because the device is not included in the profile (as expected). However, when I drag the .ipa file to my Xcode Organizer, the app installs on the device (and can be opened on the device afterwards). I tried this after making sure there were no other copies of the same app installed on the device. The same thing does not work when I use a different device that is not included in the provisioned devices of the ad hoc profile (even though the .ipa contains the app store profile without provisioned devices list).

有没有人有这个可能的解释?如此看来,在某种程度上与应用程序商店轮廓签订了构建仍可包括在相应的设备上安装(相同的应用程序标识符?同一支球队标识符?)ad hoc配置文件。但是,如果这会出现这种情况,是什么使得独立特设建立?

Does anyone have a possible explanation for this? It seems that somehow a build signed with an app store profile can still be installed on a device included in the corresponding (same app identifier? same team identifier?) ad hoc profile. But if this would be the case, what is the point of making separate ad hoc builds?

推荐答案

我注意到了这一点也和总想找出为什么它的工作。
它的使用的是真实的,你不能安装一个应用程序商店构建但似乎已经改变了,我猜无论是在iOS6的或5。

I noticed this too and always meant to find out why it worked. It used to be true that you couldn’t install an App Store build but that appears to have changed, I’m guessing either in iOS6 or 5.

我发现我只能安装App Store的供应配置文件时已经安装了兼容的ad hoc配置文件的基础之上。开发人员配置文件没有工作。我没有尝试通配符配置文件。所以它看起来像换了特设的规则。

I found that I could only install App Store provisioning profile builds when a compatible Ad Hoc profile was already installed. Developer profiles did not work. I did not try wildcard profiles. So it looks like the Ad Hoc rules changed.

我找不到安装一个特设的构建规则,但对的启动的的特设资源调配配置文件详解部分<一个话题href=\"https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/TestingYouriOSApp/TestingYouriOSApp.html\">Apple’s应用发布指南说,

I can’t find the rules for installing an Ad Hoc build, but on the topic of launching the "Ad Hoc Provisioning Profiles in Depth" section of Apple’s App Distribution Guide says that

如果该应用程序的包ID相匹配的应用程序ID的应用程序成功发射,签名的分发证书的匹配,并且该装置是在的的临时设备列表供应曲线。

The app successfully launches if the app’s bundle ID matches the App ID, the signature matches the distribution certificate, and the device is in the device list of the ad hoc provisioning profile.

所以我想在技术上的AppStore的建立,因为它也与相同的分布证书签名满足这些特设的要求。使用中的在这里误导性,因为它使得它听起来像的iOS咨询你的 embedded.mobileprovision ,这是不真实的。它应阅读的ad hoc配置文件。

So I guess technically an AppStore builds meet these Ad Hoc requirements because it too is signed with the same distribution certificate. The use of "the" is misleading here because it makes it sound like iOS consults your embedded.mobileprovision, which is untrue. It should read "an" ad hoc profile.

NB :在特设的个人资料已经安装在设备上,所以这是一个原因,使独立的特设建立唯一的安装工作。

NB: The install only worked when the Ad Hoc profile was already installed on the device, so that’s one reason to make separate ad hoc builds.

NB :这是所有的猜想,另一种解释可能是X code处理安装的 embedded.mobileprovision 现在当AppStore的配置文件安装失败继续。

NB: This is all conjecture, another explanation could be that Xcode handles the installation of the embedded.mobileprovision and now continues when the AppStore profile installation fails.

这提高了我的另一个问题:为什么iOS的DWIM对App Store的构建尚未拒绝推出特设建立与安装一个完全有效的替代过期时,供应曲线

This raises another question for me: why does iOS DWIM for App Store builds yet refuses to launch Ad Hoc builds with expired provisioning profiles when a perfectly valid replacement is installed?

这篇关于为什么我可以直接在我的设备上安装应用程序商店分布构建?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆