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>

(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>

不过这个方式早已在 iOS10 中已经失效。

但是可以通过另一种手段达到同样的效果。非常简单,步骤如下:

  • 从到苹果开发者的证书管理中,下载企业发布证书 xxx.mobileprovision。
  • 把证书放到服务器上
  • href 改为证书在服务器上的路径
// html
<a href="https://xxx/xxx.mobileprovision">前往信任</a>

总结

  • 尝试这个功能,建议还是找一个有https证书的服务器,本人在码云上测试过,并不能实现下载功能,可能和我操作有关系。
  • 存放IPA文件的服务器也很重要,一般iOS的IPA包都在50M以上,如果服务器的带宽太小,那么下载这个过程都有很久!

最后

码字不易,还望大家点赞支持!
在这里插入图片描述
在这里插入图片描述

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值