- 准备工作
- 开工
- 总结
前言
(1)plist文件:
plist文件被iOS的Safari浏览器识别之后会下载配置好的ipa文件,具体内容如下:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <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>IPA的地址</string> </dict> <dict> <key>kind</key> <string>display-image</string> <key>url</key> <string>57×57图片的地址</string> </dict> <dict> <key>kind</key> <string>full-size-image</string> <key>url</key> <string>512×512图片的地址</string> </dict> </array> <key>metadata</key> <dict> <key>bundle-identifier</key> <string>Bundle ID(需要填写)</string> <key>bundle-version</key> <string>1.1.0(版本号)</string> <key>kind</key> <string>software</string> <key>title</key> <string>APP的名称</string> <key>New item - 2(选填)</key> <string></string> <key>New item(选填)</key> <string></string> </dict> </dict> </array> </dict> </plist>
(2)要把所有需要的文件都上传到https服务器中,然后拿到访问地址,确保可以访问,如:
需要ipa、plist、icon四个文件的下载地址。 `https://xxxx.xxxx.com/xxx.ipa` `https://xxxx.xxxx.com/xxx.plist` `https://xxxx.xxxx.com/57分辨率.png` `https://xxxx.xxxx.com/512分辨率.png`
(3)不出意外的话,到这一步就可以直接在iOS的Safari浏览器中直接访问
itms-services:///?action=download-manifest&url=plist下载路径
就可以进行下载了,网上说一定是三个///,否则不能下载,但是我试过两个//也行,但是大家输入路径的时候还是注意检查一下。这里建议做一个下载页,点击下载按钮进行下载,简单的效果如下:
<!doctype html> <html> <head> <meta charset="UTF-8"> <title>下个载</title> </head> <a style="text-align:center" href="itms-services:///?action=download-manifest&url=plist下载路径">下载</a> </html>
这里有个建议,大家做下载页面的时候最好不要让Android端手机用户下载文件,以及iPhone端手机用户也要考虑指引用户打开Safari浏览器才让他们下载,即微信端打开的时候做个提示。
这是下载效果:
(4)大致说说iOS从Safari跳转到描述文件与设备管理
做过企业级IOS App的开发者应该都遇到过这样的困扰:用户下载完成企业级App后,需要进入经历一个痛苦的手动信任过程:
进入 【设置】 -> 【通用】 -> 【描述文件与设备管理】 -> 找到对应证书 -> 点击信任 -> 回到桌面打开
很多不熟悉信任过程的用户基本很难完成这样的操作。所以为了能让用户完成信任操作,开发者们也是想尽办法做出各种方案。
IOS是支持通过 *url schemes * 的方式打开应用的,也可以用这样的方式直接打开 【描述文件与设备管理】:
//html文件 <a href="prefs:root=General&path=ManagedConfigurationList">前往信任</a>
- 从到苹果开发者的证书管理中,下载企业发布证书 xxx.mobileprovision。
- 把证书放到服务器上
- href 改为证书在服务器上的路径
// html <a href="https://xxx/xxx.mobileprovision">前往信任</a>
总结
- 尝试这个功能,建议还是找一个有https证书的服务器
- 存放IPA文件的服务器也很重要,一般iOS的IPA包都在50M以上,如果服务器的带宽太小,那么下载这个过程都有很久!
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/216043.html原文链接:https://javaforall.net
