大家好,欢迎来到IT知识分享网。
IOS – 如何自建APP分发平台
前言
因为工作原因,要接触到前端开发,所以不可避免的要和iOS打交道,这篇文章主要是记录某些新接触到的开发内容,同时也为需要的人提供还算ok的教程。
提示:以下是本篇文章正文内容,下面案例可供参考
一、什么是APP分发?
APP分发其实就是APP推广,因为某些原因导致开发的APP无法上线下载市场,此时就需要进行APP分发(推广)了,Android的分发就很简单,只需要下载apk包安装即可,只不过iOS的就稍稍复杂一点点。当然,问题不大,接下来就详细说说iOS怎么自建分发。关于APP分发(推广)的推广市场大家有兴趣的话可以移步知乎看看58官方的回答。点我跳转.
二、如何自建iOS分发
1.准备工作
iOS自建分发也是需要些准备工作的,您需要的准备是:
- 具有https证书的域名和空间。
- 或使用github或者国内第三方托管平台。
- 企业签名过后的ipa包。
- plist文件。
- icon图标两个,分辨率分别是57×57和512×512;(可以不准备,但是下载的时候不会显示图标)
2.开工
针对准备工作中需准备的文件,做部分说明:
(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>
IT知识分享网
(2)、要把所有需要的文件都上传到https服务器中,然后拿到访问地址,确保可以访问,如:
IT知识分享网需要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下载路径
就可以进行下载了,网上说一定是三个///,否则不能下载,但是我试过两个//也行,但是大家输入路径的时候还是注意检查一下。这里建议做一个下载页,点击下载按钮进行下载,简单的效果如下:
IT知识分享网<!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>
不过这个方式早已在 iOS10 中已经失效。
但是可以通过另一种手段达到同样的效果。非常简单,步骤如下:
- 从到苹果开发者的证书管理中,下载企业发布证书 xxx.mobileprovision。
- 把证书放到服务器上
- href 改为证书在服务器上的路径
// html
<a href="https://xxx/xxx.mobileprovision">前往信任</a>
总结
- 尝试这个功能,建议还是找一个有https证书的服务器,本人在码云上测试过,并不能实现下载功能,可能和我操作有关系。
- 存放IPA文件的服务器也很重要,一般iOS的IPA包都在50M以上,如果服务器的带宽太小,那么下载这个过程都有很久!
最后
码字不易,还望大家点赞支持!
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/12293.html