不通过App Store实现ios应用分发下载安装

您所在的位置:网站首页 ios下载appstore外的应用 不通过App Store实现ios应用分发下载安装

不通过App Store实现ios应用分发下载安装

2024-07-11 17:03| 来源: 网络整理| 查看: 265

最近公司的项目准备着手宣传工作了,宣传手册上要印制App的下载地址二维码,但是客户端应用还未上线,需要一种临时的方案解决应用分发下载问题,通常ios应用必须通过苹果应用商店才能下载安装,但是也可以看到一些应用没有通过苹果应用商店也能下载安装,比如下面的兔兔助手。

直接扫码或者点击手机页面的下载链接就能下载安装成功。

p1.pngp1.png

其实这种安装方式是利用企业证书签名app的部署方式来安装程序,直接在ios设备上安装,严格来说其实是不符合apple的相关规定的,因此一般只用于内部测试下载安装,不建议使用这种方式来进行最终的应用分发。下面具体介绍一下实现方式。

准备的文件主要是三个:

1、应用程序 后缀(.ipa) 文件(使用了企业级预置描述文件);2、清单 (后缀.plist) 文件(xml格式的清单描述文件)。3、网页(后缀.html)文件(引导用户安装的界面)

我没做过ios开发,因此.ipa文件,.plist文件怎么得到,开发人员应该很清楚,这里只介绍一下文件部署的情况。

首先APP上传到服务器有一个下载地址,比如:http://youdomain/app.ipa

然后部署.plist文件,这个文件大致如下所示:

代码语言:javascript复制 items assets kind software-package url http://cloud.189.cn/download/client/iOS/cloud189_1.1.1.ipa metadata bundle-identifier 请填上你的开发者证书用户名 bundle-version 版本 kind software title 请填上标题

需要注意的是从ios7.1开始,http推送plist已经不能用了,只能使用https推送,因此访问这个文件的地址必须是https开头的。你可以配置自己的服务器支持https服务,也可以借助第三方工具,这里主要介绍使用第三方工具。

国外有很多网站都是支持https服务的,比如DropBox和Github,以Github为例,打开任意开源项目中的一个文件,切换到“RAW”

可以看到地址栏显示的是https,因此可以把app.plist文件上传到github生成一个https地址,不幸的是github在国内基本上属于被墙的状态,因此需要在国内找一个能提供https服务的存储方式,这里我推荐七牛云存储,注册成为标准用户后,新建一个空间,上传文件

在空间设置里可以开通https服务

这样就能得到一个https://dn-yourdomain.qbox.me/app.plist的地址,说了这么多,终于将.plist文件部署好了,其实前面的.ipa文件也可以上传到七牛云存储上供下载分流。

最后介绍如何下载安装应用,使用的是itms-services:协议

代码语言:javascript复制itms-services://?action=download-manifest&url=https://plist文件的地址

接下来只要在网页(html)文件中加入

代码语言:javascript复制安装

这样点击手机网页上的“安装”链接就能下载安装应用了。至于这个页面要做的多花里胡哨,那就是前端美工的事了。

这里有一段比较完整的示例

代码语言:javascript复制 应用名字 如果点击无法下载安装,请复制超链接到浏览器中打开 点击下载

如果想手机进入页面后直接下载安装,可以在html 标签的 head 标记中加入如下的Javascript代码。

代码语言:javascript复制 var url ="https://plist文件地址"; window.location ="itms-services://?action=download-manifest&url="+ url;

这样就会自动提示下载和安装了。

如果通过ios应用内安装,代码大概如下所示

iOS:

代码语言:javascript复制[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"itms-services://?action=download-manifest&url=https://plist文件的地址"]];

最后才是重点,我们不必这么麻烦自己部署这么多文件,完全可以借助第三方应用内测分发平台,比较出名的有下面几个:

应用测试发布平台

fir.im - 免费应用内测托管平台|iOS应用Beta测试分发|Android应用内测分发

http://fir.im/

蒲公英 - 免费的应用托管平台|App应用众测分发

http://www.pgyer.com/

Pre.im - APP内测托管平台首选 - Beta测试 - 免费的应用内测托管平台

http://pre.testin.cn/

TestFlight Beta Testing - App Store - Apple Developer

https://developer.apple.com/testflight/

试用了一下蒲公英,真是相当方便,只要注册一个帐号,将ipa文件上传,就会立即生成一个下载地址以及引导下载页面

通过查看api可以看到,蒲公英也是通过上面的方式安装的,只是给开发者省了不少时间

如果你嫌蒲公英的下载引导页面不好看,你可以自己做一个html页面,直接是用上面的itms-services地址。

参考资料通过 itms-services 协议,发布或者分享 iOS 应用程序来自为知笔记(Wiz)


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3