今天,我走过了将iOS设备连接到计算机并运行我的应用程序的过程。要做到这一点,我必须......
虽然我理解了这个过程并且能够成功连接我的设备,但我完全不理解这一切。任何人都可以解释这个过程中每个步骤的重点以及Apple为什么要这样做?
非常感谢您的帮助!至少在高层次上理解这些东西对我来说很重要。
答案 0 :(得分:4)
Apple只想折磨开发者:)
开玩笑说,我不知道为什么。没有官方解释为什么你需要这些步骤,这是我的推测。Apple希望确保
这可能是为了禁止在Apple自己的App Store之外分发应用程序。如果不需要这三个步骤中的任何一个, 很容易想象你如何“滥用”开发者身份来安装大量应用程序而无需通过App Store。
这解释了为什么需要执行1,2和3.为了让XCode和i-Device本身进行检查,您需要配置文件。这解释了第4点。
答案 1 :(得分:2)
作为一个粗略的解释..该设备只运行签名的应用程序。您的开发人员证书(以及您的私钥)会对您的应用进行签名,以便它可以在您的设备上运行。 (或您提名的其他开发设备)
如果您进行了beta测试,您的Ad Hoc证书+配置文件将允许配置文件中包含其UDID的所有设备运行该应用。测试版测试人员不需要您的开发人员证书,只需要他们在配置文件中嵌入的设备UDID。
当您分发到应用商店时,您使用分发配置文件(以及团队代理密钥),并且在该代码可以在设备上运行之前需要Apple的其他签名(共同签名?)。由于Apple签署了该设备,因此该设备无需关心允许哪些UDID。
答案 2 :(得分:1)
Apple决定在应用开发期间和之后保持对开发人员和应用的严格控制。这意味着在任何给定的时间点,他们在开发人员,应用程序,设备和应用程序的用户之间建立了紧密的联系,无论是通过adhoc分发机制,还是通过用户在iTunes Store中进行的购买。我们可能只推测他们内部认为这里的目标和利益是什么,但正如市场所显示的那样,结果对所有各方都有利,因为他们在几年内从遗忘到最流行的智能手机平台之一。
一个非常直接的目标是他们打算保持对分销渠道的控制,并确保应用程序无法通过任何渠道正式分发,并且他们可以控制所有移动的资金,因此100-deviceIDs-per-开发计数限制(因此您无法在Apple的渠道之外分发您的应用程序,但100个设备应足以进行封闭测试)。