我们已经建立了一个企业iPad应用程序,现在我们想把它交给我们的员工.最初在测试时,我们使用ad-hoc分发收集所有测试设备的UDID,然后创建配置文件.
现在,我们希望将此应用程序部署在安全的Web服务器中,并将链接发送给我们的员工,以便他们在访问链接之前输入用户名和密码.
我们需要安装此iPad应用程序的设备数量超过500台.我是否需要收集所有UDID然后部署该.ipa文件,因为Apple文档说:
创建企业分发配置文件,授权设备使用您已签名的应用程序.
如果不是这样,用户是否需要安装profile.mobileprovision文件然后安装.ipa文件?
由于此问题,我们仍无法决定如何部署我们的应用.我们希望避免应用程序批准过程,因为它可以处理大量敏感数据.
有人可以帮我解决这个问题,如何为企业应用程序进行OTA部署?
我正在开发一个iPhone应用程序.
由于应用程序是位置感知我在不同的地方测试它(我不在的地方).
为此,我正在向我的朋友发送.mobileprovision配置文件和应用程序adhoc构建.
但在他的最后,应用程序安装在两者之间停止.
在设备日志中,它给我以下日志:
2:42:30 unknown mobile_installationd[164] <Error>: 00808800 install_embedded_profile: Skipping the installation of the embedded profile
Wed Nov 11 12:42:31 unknown mobile_installationd[164] <Error>: 00808800 verify_executable: Could not validate signature: e8008017
Wed Nov 11 12:42:31 unknown mobile_installationd[164] <Error>: 00808800 preflight_application_install: Could not verify /var/tmp/install_staging.HreENJ/foo_extracted/Payload/RestaurantApp .app/RestaurantApp
Wed Nov 11 12:42:31 unknown mobile_installationd[164] <Error>: 00808800 install_application: Could not preflight application install
Wed Nov 11 12:42:31 unknown mobile_installation_proxy[163] <Error>: handle_install: Installation failed
Wed Nov 11 12:42:31 unknown mobile_installationd[164] <Error>: 00808800 handle_install: API …Run Code Online (Sandbox Code Playgroud) 我正在尝试分发新版本的应用程序(它可以安装OTA),我收到错误:
"代码签名错误:找不到匹配的配置文件:您的构建设置指定了具有UUID"AdHocProfile"的配置文件,但是,没有找到这样的配置文件."
并且Xcode在自动修复错误的过程中陷入困境:

我在周末花了很多时间在这里和互联网上寻找解决方案,只是为了摆脱我在尝试存档应用程序以分发"Ad Hoc"时遇到的两个错误之一.
我做了一些捕捉屏幕来澄清我做了什么:
开发人员站点上的配置文件:

我的帐户:证书和个人资料:

项目设置:

目标设置(当我删除project.pbxproj中的行PROVISIONING_PROFILE时,Xcode更改了它们):

我在project.pbxproj中删除了包含PROVISIONING_PROFILE的行,按照与此类似的帖子中找到的说明

我还删除了Xcode的稳定版和测试版,并从App Store重新安装了它.不知道它是否重要,但我删除了带有App Cleaner的beta 5.1.3,删除了与之关联的所有文件.
由于Xcode不再显示弹出窗口上的值来选择证书,我不确定我是否选择了正确的证书.
你能帮我解决这个问题吗?
由于Apple要求使用https而不是http来通过无线方式分发IPA,我尝试使用dropbox.我遵循此解决方案企业应用程序部署在iOS 7.1上不起作用但我收到此错误:
"无法连接到dl.dropboxusercontent.com"
当试图通过此链接安装plist时: <a href="itms-services://?action=download-manifest&url=https://dl.dropboxusercontent.com/s/56ny312cwdacho7/xxxxx.plist> Install </a>
提前致谢.
对于iOS 7.1,当您尝试执行具有.plist文件的http链接的OTA安装时,您将收到以下错误:'无法安装应用程序,因为com.test.com的证书无效'然后我有一个发现ios 7.1不能再使用http了.需要将http更改为https
比如说
itms-services://?action=download-manifest&url=http://www.test.com/OTA_App_Name.plist
Run Code Online (Sandbox Code Playgroud)
至
itms-services://?action=download-manifest&url=https://www.test.com/OTA_App_Name.plist
Run Code Online (Sandbox Code Playgroud)
我改变之后仍然出现错误"无法连接www.test.com".我已检查所有plist详细信息是否正确链接.任何想法?我是否还需要设置https证书?如何?
我刚刚更新到IOS 7.1公开发布,如果我去我的应用程序商店进行企业应用程序,我尝试下载应用程序,这给了我错误:
无法安装应用程序,因为example.com的证书无效
但是相同的版本适用于iOS 7.0.6之前的iOS版本.因为它是新的,我在网上找不到任何信息.
为了部署企业iOS应用程序,我创建了以下链接:
未编码版本(便于阅读):
<a href="itms-services://?action=download-manifest&url=https://example.com/api/distribution/ios?token=abc123">Download</a>
Run Code Online (Sandbox Code Playgroud)
编码版本:
<a href="itms-services://?action=download-manifest&url=https%3A%2F%2Fexample.com%2Fapi%2Fdistribution%2Fios%3Ftoken%3Dabc123">Download</a>
Run Code Online (Sandbox Code Playgroud)
假设用户的令牌是有效的,.plist文件通过SSL返回,作为讨论在这里..ipa文件中引用的.plist文件的URL 是即时生成的.这是.plist文件的样子:
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>TEMP_URL</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>org.cocos2d.ready-ios</string>
<key>bundle-version</key>
<string>0.0.1</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>Ready</string>
</dict>
</dict>
</array>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)
据我所知,我们的GoDaddy SSL证书似乎在可信列表中.
但是,尽管如此,在点击链接并等待片刻之后,我收到以下错误:
Cannot connect to [domain]
Run Code Online (Sandbox Code Playgroud)
这是点击链接后的iPhone控制台输出:
Aug 29 07:30:56 My-iPhone wifid[15] <Notice>: WiFi:[431015456.799163]: Client itunesstored set type to background application
Aug 29 …Run Code Online (Sandbox Code Playgroud) 我知道通常通过HTTPS安装是有效的,但不知何故它不在我的环境中.
据我所知,itms-service链接是HTTP:
itms-services://?action=download-manifest&url=http://' . $_SERVER['SERVER_NAME'] . $downloadLink
Run Code Online (Sandbox Code Playgroud)
然后,.plist中的链接就是HTTPS
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>https://app.ipa</string>
</dict>
<dict>
<key>kind</key>
<string>full-size-image</string>
<key>needs-shine</key>
<true/>
<key>url</key>
<string>https://image_512x512.png</string>
</dict>
<dict>
<key>kind</key>
<string>display-image</string>
<key>needs-shine</key>
<true/>
<key>url</key>
<string>https://image_57x57.png</string>
</dict>
</array>
Run Code Online (Sandbox Code Playgroud)
但该应用程序将无法安装.我总是收到消息"App无法加载"
所有URL都可通过HTTP和HTTPS访问.
XCode显示应用程序日志
unknown securityd [2331]:CFReadStream域:12错误:8
我在这做错了什么?
谢谢
ios ×4
ota ×3
enterprise ×2
ipa ×2
iphone ×2
plist ×2
adhoc ×1
dropbox ×1
installation ×1
ios7 ×1
ios7.1 ×1
ipad ×1
over-the-air ×1
ssl ×1
xcode ×1