iOS进阶知识

iOS使用github自建应用内测分发平台

2020-02-27  本文已影响0人  凉风起君子意如何

前提背景(可绕过直接看正文)

应用内测分发平台。

51 用的相对比较少

一般应用,通过【蒲公英】和【fir.im】进行应用分发就可以了,使用简单,应用可管理,下载方式便捷等等。

题外话:

我们这边一直用的是fir,但昨天突然发现fir官网挂了,最开始页面给的是紧急修复中,之后变成通过另外一个域名能临时访问,之后我们这边负责fir那块的同事 联系他们客服,说是他们域名到期导致。(我们公司有付费)截止到今天访问fir,给出了如下解决方案。


fir官网宕机截图

基于fir突然莫名其妙挂掉,我们只好试用别的分发平台,找到蒲公英 发现上传发布都是成功的,最后一步下载二维码 报APP违规,禁止上架。申诉之后蒲公英给出的答复说禁止金融理财类应用上传。


禁止金融理财类应用上传

我们APP涉及通过蓝牙跟mpos连接进行刷卡的交易,大概属于金融类APP。
之后网上无意中看到可以用github自建内测分发平台,于是就捣鼓了一下,小结于此。

正文

两大块

一:配置存放ipa包的服务器

准备资源:
1、ipa包(导包的时候,请注意以下截图细节。图拿的参考连接)


注意红框

2、manifest.list文件

?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>https://github.com/github账号/仓库名称/raw/master/应用.ipa</string>
                                </dict>
                                <dict>
                                        <key>kind</key>
                                        <string>display-image</string>
                                        <key>url</key>
                                        <string>https://github.com/github账号/仓库名称/raw/master/icon-57@1x.png</string>
                                </dict>
                                <dict>
                                        <key>kind</key>
                                        <string>full-size-image</string>
                                        <key>url</key>
                                        <string>https://github.com/github账号/仓库名称/raw/master/icon-512@1x.png</string>
                                </dict>
                        </array>
                        <key>metadata</key>
                        <dict>
                                <key>bundle-identifier</key>
                                <string>应用BundleID</string>
                                <key>bundle-version</key>
                                <string>应用版本</string>
                                <key>kind</key>
                                <string>software</string>
                                <key>title</key>
                                <string>应用名称</string>
                        </dict>
                </dict>
        </array>
</dict>
</plist>

3、57和512尺寸的icon

上传资源
在自己github上新建一个仓库,将以上123资源上传到该仓库里


github上传资源

二:配置内测用户下载的html页面

提供html页面,供测试用户下载
html页面代码如下,且另新建一个仓库,将该html文件上传到该仓库。

<!doctype html>
<html>
    <head>
        <meta charset="UTF-8">
            <title>应用名称</title>
    </head>
    <a style="text-align:center" href="itms-services:///?action=download-manifest&url=manifest.plist的下载连接">点我下载按钮</a>
</html>

manifest.plist的下载连接 格式为:https://github.com/github账号/仓库名称/raw/master/manifest.plist

体验

在手机safri输入https://wangxiaoya.github.io, 点我下载即可下载

效果图
访问的过程中若出现,无法连接github.com问题,请尝试用wifi,或者检查manifest.list文件路径是否配置错误

其他

1、进入页面后直接下载安装,可以在html 标签的 head 标记中加入如下的Javascript代码

<script>
        var url ="https://manifest.plist文件地址";
        window.location ="itms-services://?action=download-manifest&url="+ url;
</script>

2、通过iOS应用内安装

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"itms-services://?action=download-manifest&url=https://manifest文件地址"]];

3、整个过程最关键 itms-services 协议

itms-services://?action=download-manifest&url=manifest.plist地址

4、https 服务器
如果你有自己的可支持 https 的服务器,你可以将【准备资源】中的文件都上传至服务器,只需暴露出下载页面给测试人员,因为 github 毕竟是公开性质的,测试包很容易被其他人拿到,传输速度也不够快;

或者你可以将 ipa 上传至其他平台,如七牛等等,修改一下 manifest.plist 中 ipa 地址即可。

参考该链接,非常感谢网友分享

上一篇下一篇

猜你喜欢

热点阅读