前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >iOS系统在线下载安装ipa文件,以及跳转描述文件信任证书的实现

iOS系统在线下载安装ipa文件,以及跳转描述文件信任证书的实现

作者头像
德顺
发布2019-11-13 11:29:23
9.5K0
发布2019-11-13 11:29:23
举报
文章被收录于专栏:前端资源前端资源

上周写了一个iOS系统在没有上架苹果应用商店的情况下,通过企业证书安装 ipa 软件的实例。

教程简介:

1、利用 itms-services 和 plist 文件,在线下载安装 ipa 文件。

2、直接跳转【设置-通用-描述文件】,信任证书。

首先需要特别注意

1、ipa 的下载地址放到 plist 的文件中,链接指定 plist(格式见下文)

2、plist 的链接必须是 https (SSL加密)的,而且必须是公网,自签名及免费的 https 不可用。

3、链接格式要求一定是符合苹果规范的,itms-services://?action=download-manifest&url=https://****/***.plist

目前可以使用 https 测试用的域名:https://raw.githubusercontent.com/

下载安装ipa:

将 plist 上传到 github 上,查看 plist 内容页面上右上角点击“Raw”。

使用该地址链接格式为 https://raw.githubusercontent.com/用户名/项目名/master/xxxx.plist

拼接链接: itms-services://?action=download-manifest&url=https://raw.githubusercontent.com/用户名/项目名/master/xxxx.plist

在 iPhone 手机中打开 Safari ,访问该链接,提示:在"iTunes"中打开链接吗?,点击打开。

提示“raw.githubusercontent.com”要安装“XXXXX”,点击安装即可在线下载安装 ipa 。

点击直接跳转信任证书:

针对企业应用安装后如何在 Safari 中引导用户跳转到 设置 - 通用 - 描述文件 页面,以便用户信任企业签名描述文件,在 iOS9 的时候很方便,无论是在应用内还是在 Safari 中都可以直接唤起,但是从 iOS10 起,苹果禁止了一切对 设置 的主动跳转。

iOS9

iOS10

in-App (openURL)

Safari

另外还测试了一下,在应用内用 UIWebView 加载 HTML 进行跳转,结论与上一致。

URL Scheme

代码语言:javascript
复制
iOS 9 : prefs:root=General&path=ManagedConfigurationList
iOS 10 : App-Prefs:root=General&path=ManagedConfigurationList

解决:

可以看到 iOS10 并不能从 Safari 直接跳转 描述文件 了,但是还有一个方式可以达到该效果,直接链接到一个企业签名的描述文件(.mobileprovision),在 Safari 中直接访问 https://raw.githubusercontent.com/用户名/项目名/master/hello.mobileprovision (你的企业描述文件地址)就可以实现跳转了。

.plist格式:

代码语言:javascript
复制
<?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://xxxxxxxxxxxxxxxxxxx/xxx.ipa</string>
				</dict>
				<dict>
					<key>kind</key>
					<string>full-size-image</string>
					<key>needs-shine</key>
					<true/>
					<key>url</key>
					<string>http://xxxxxxxxxxxxxxxxxx.png</string>
				</dict>
				<dict>
					<key>kind</key>
					<string>display-image</string>
					<key>needs-shine</key>
					<true/>
					<key>url</key>
					<string>http://xxxxxxxxxxxxxxxxxx.png</string>
				</dict>
			</array>
			<key>metadata</key>
			<dict>
				<key>bundle-identifier</key>
				<string>com.xxxx.demo</string>
				<key>bundle-version</key>
				<string>1.0.0</string>
				<key>kind</key>
				<string>software</string>
				<key>title</key>
				<string>XXXX App download</string>
			</dict>
		</dict>
	</array>
</dict>
</plist>

参考文档:

ipa在线下载安装(itms-services)

如何在 iOS10 Safari 中跳转 [设置-通用-描述文件]

声明:本文由w3h5原创,转载请注明出处:《iOS系统在线下载安装ipa文件,以及跳转描述文件信任证书的实现》 https://cloud.tencent.com/developer/article/1538035

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 下载安装ipa:
  • 点击直接跳转信任证书:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档