iOS企业版app部署到自己服务器(不通过AppStore,在iOS设备上直接安装ipa)

iOS企业版app部署到自己服务器(不通过AppStore,在iOS设备上直接安装ipa),第1张

概述iOS企业版app部署服务器上说明针对iOS升级得iOS7 以后,plist文件必须放到https的服务器上了,http不可以用了。解决方式:找一个第三方https外链的网盘(比如阿里云之类的),将plist文件放到网盘上,ipa安装包可以放在自己的http服务器上。不通过在AppStore,在iOS设备上直接安装ipa的原理通过itms-services协议,在safari浏览器可...

文章目录 一、前言二、必须有一个https外链三、企业版ipa下载安装流程四、部署的具体过程1. 搭建一个自己的http服务器2. 用企业证书打出一个ipa包,并放到自己的http服务器上3. 申请一个https云盘(比如阿里云企业网盘)4. 写一个plist文件,并放到https云上5. 写一个html下载页面,放到自己的http服务器上

一、前言

我们打出的ipa包,有两种主要的方式投放到市场上,一个是上架AppStore,一个是放到自己的http/https服务器上,通过自己的网页下载。上架AppStore可能会遇到一些限制,审核严格,过程坎坷,这里主要介绍如何放到自己的http服务器上以供外部玩家进行下载安装ipa。注意,必须使用企业证书打的ipa包才可以通过自己的http/https服务器下载安装。

二、必须有一个https外链

针对iOS升级得iOS7以后,pList文件必须放到https的服务器上了,http不可以用了
解决办法:
找一个第三方https外链的网盘(比如阿里云企业网盘),将pList文件放到网盘上,ipa安装包可以放在自己的http服务器上。
注: 其实将pList托管到GitHubgetee或者CODE.CHINA等代码托管云上也是可以的,支持https即可。

三、企业版ipa下载安装流程

通过itms-services协议,在safari浏览器可以直接在iOS设备上安装应用程序。itms-services协议需要一个pList配置文件,这个pList文件必须放在https服务器上,通过pList中的配置,再指向回http服务器中的ipa地址。

画成流程图就是下面这样:

四、部署的具体过程 1. 搭建一个自己的http服务器

linux下搭建基本web服务: https://blog.csdn.net/zhydream77/article/details/79683912

假设地址是:http://mywebserver.com

2. 用企业证书打出一个ipa包,并放到自己的http服务器上

企业证书打包ipa文件(图文详解): https://blog.csdn.net/lee727n/article/details/78286178

假设打出来的包名字是 mygame.ipa
放到http服务器上,对应的下载地址假设是http://mywebserver.com/mygame.ipa
但这个并不能直接在苹果手机上下载安装,而必须通过https服务器和一个pList文件。

3. 申请一个https云盘(比如阿里云企业网盘)

阿里云:https://www.aliyun.com/


大致流程是:
1 购买云服务器
2 购买OSS存储
3 部署DzzOffice网盘
4 连接OSS存储
下载配套的OSS客户端,方便后面上传文件到https服务器上
阿里OSS客户端 windows下载与使用:https://blog.csdn.net/zhuiqiuk/article/details/53697223

假设我们申请到的https地址是:https://myhttpswebserver.com

4. 写一个pList文件,并放到https云上

参考下面的pList示例。注意几个地方:ipa的http地址,图标.pnghttp地址,游戏的bundleID,游戏的名字
假设我们的pList文件叫:mygame.pList
放到https服务器上,假设对应的pList文件的地址是:https://myhttpswebserver.com/mygame.pList
pList文件示例:

<!-- mygame.pList --><?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>http://mywebserver.com/mygame.ipa</string>          <!-- ipa的http地址 -->                </dict>                <dict>                    <key>kind</key>                    <string>full-size-image</string>                    <key>needs-shine</key>                    <false/>                    <key>url</key>                    <string></string>                </dict>                <dict>                    <key>kind</key>                    <string>display-image</string>                    <key>needs-shine</key>                    <false/>                    <key>url</key>                    <string>http://mywebserver.com/显示的图标.png</string>      		<!-- 显示的图标.png的http地址 -->                </dict>            </array>            <key>Metadata</key>            <dict>                <key>bundle-IDentifIEr</key>                <string>游戏的bundleID</string>        				<!-- 游戏的bundleID,比如com.linxinfa.mygame -->                <key>bundle-version</key>                <string>1.0.0</string>                <key>kind</key>                <string>software</string>                <key>Title</key>                <string>游戏名字</string>   							 <!-- 游戏名字 -->            </dict>        </dict>    </array></dict></pList>
5. 写一个HTML下载页面,放到自己的http服务器上

假设我们的HTML文件叫:mygame.HTML
这个HTML页面放到http服务器上,假设对应的页面地址是 http://mywebserver.com/mygame.HTML
HTML下载页示例:

<!-- mygame.HTML--><!DOCTYPE HTML> <HTML> <head> <Meta charset="utf-8"> <Meta name="vIEwport" content="wIDth=device-wIDth; initial-scale=1.0"> <Title>iOS企业版下载测试</Title> </head> <body> <div class="doc"> <p align="center"><Font size="7">iOS企业版下载测试</Font></p><p align="center">	<!-- 这里就用到了上文提到的itms-services协议了 -->	<a href="itms-services://?action=download-manifest&url=https://myhttpswebserver.com/mygame.pList">点击下载</a>		</p></div></body> </HTML>

以上都弄好了之后,在手机safari浏览器上输入HTML的路径: http://mywebserver.com/mygame.HTML


点击[点击下载]

回到桌面,即可看到正在下载安装了。注意,必须在苹果手机上才可以下载安装哦

总结

以上是内存溢出为你收集整理的iOS企业版app部署到自己服务器(不通过AppStore,在iOS设备上直接安装ipa)全部内容,希望文章能够帮你解决iOS企业版app部署到自己服务器(不通过AppStore,在iOS设备上直接安装ipa)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/998852.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存