美文网首页iOS进阶知识
iOS使用github自建应用内测分发平台

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

作者: 凉风起君子意如何 | 来源:发表于2020-02-27 15:33 被阅读0次

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

    应用内测分发平台。

    51 用的相对比较少

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

    题外话:

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


    fir官网宕机截图

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


    禁止金融理财类应用上传

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

    正文

    两大块

    • 存放ipa包的服务器
    • 供内测用户下载的html页面

    一:配置存放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 地址即可。

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

    相关文章

      网友评论

        本文标题:iOS使用github自建应用内测分发平台

        本文链接:https://www.haomeiwen.com/subject/wwjthhtx.html