周写了一个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

下载安装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

iOS 9:prefs:root=General&path=ManagedConfigurationListiOS 10:App-Prefs:root=General&path=ManagedConfigurationList

解决:

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

.plist格式:

<?xml  version="1.0"encoding="UTF-8"?>plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">itemsassetskindsoftware-packageurlhttp://xxxxxxxxxxxxxxxxxxx/xxx.ipakindfull-size-imageneeds-shineurlhttp://xxxxxxxxxxxxxxxxxx.pngkinddisplay-imageneeds-shineurlhttp://xxxxxxxxxxxxxxxxxx.pngmetadatabundle-identifiercom.xxxx.demobundle-version1.0.0kindsoftwaretitleXXXX App download

参考文档:

ios safari 描述文件 跳转到_iOS系统在线下载安装ipa文件,以及跳转描述文件信任证书的实现...相关推荐

  1. vuejs项目纯js导出word、在线下载富文本内容或者网页另存为word文件

    所有前端导入导出方法集合: 前端必备技能知识:JS导出Blob流文件为Excel表格.Vue.js使用Blob的方式实现excel表格的下载(流文件下载)_勤动手多动脑少说多做厚积薄发-CSDN博客_ ...

  2. vuejs项目前端纯js在线下载网页内容保存为自定义格式的word文件、另存为word文件

    所有前端导入导出方法集合: 前端必备技能知识:JS导出Blob流文件为Excel表格.Vue.js使用Blob的方式实现excel表格的下载(流文件下载)_勤动手多动脑少说多做厚积薄发-CSDN博客_ ...

  3. Android/IOS 实现接触NFC自动跳转到App,如果未安装App,则跳转到应用市场

    我们是做共享电单车的,友商最近推出了手机碰一碰NFC自动跳转到App自动开锁的功能,这个对于用户体验是有提升的,所以研究了一下. 友商的逻辑是这样的 如果手机没有安装该App,那么触碰NFC后 And ...

  4. AndroidIOS 实现接触NFC自动跳转到App,如果未安装App,则跳转到应用市场

    我们是做共享电单车的,友商最近推出了手机碰一碰NFC自动跳转到App自动开锁的功能,这个对于用户体验是有提升的,所以研究了一下. 友商的逻辑是这样的 如果手机没有安装该App,那么触碰NFC后 And ...

  5. android 跳转崩溃_iOS系统突现大量bug! 英雄联盟手游配置需求公布、iOS13.5全设备越狱到来、三星手机系统崩溃...

    1英雄联盟手游配置需求公布近日英雄联盟手游发布消息称,将于6月份在巴西和菲律宾进行限量首测.同时还公布了英雄联盟手游对于设备配置的最低要求,如果是iOS设备的话最低需要 iPhone6 也就是A8处理 ...

  6. JavaScript - 唤醒 app store 跳转到苹果商店内下载指定应用页面 安卓跳转默认浏览器应用页面

    本篇文章主要记录通过微信分享页判断设备类型并跳转对应的下载页: 安卓跳转默认浏览器 苹果跳转苹果商店App Store 通过 window.navigator 获取智能机信息.浏览器版本信息 获取智能 ...

  7. iOS:苹果企业证书通过网页分发下载安装app

    iOS:苹果企业证书通过网页分发安装app       苹果的企业级证书发布的应用,是不用设备授权即可直接安装,并且不限设备上限.为了方便分发,苹果有协议实现通过网页链接直接下载安装企业级的应用.   ...

  8. ios中在app中安装ipa的方法

    转自http://www.yonsm.net/post/553,http://since2006.com/blog/240/ios6-mobileinstallationinstall iOS 中要安 ...

  9. iOS 中使用 Mobile Installation 安装 IPA(使用iTunes/AppStore一样的安装API)

    iOS 中要安装一个程序,从用户角度看有三种: 1. 类似 Cydia 这种 DEB 的方式:直接安装到 /Applications 作为系统的APP,无法长按删除(不讨论CyDelete). 2. ...

  10. linux防火墙文件路径,防火墙问题 Linux系统 /etc/sysconfig/路径下无iptables文件

    虚拟机新装了一个CentOs7,然后做防火墙配置的时候找不到iptables文件,解决方法如下: 因为默认使用的是firewall作为防火墙,把他停掉装个iptable systemctl stop ...

最新文章

  1. 基于数组的无锁队列(译)
  2. Scrapy + Redis 分布式爬取58同城北京全站二手房数据
  3. Linux db2 4499,db2 連接 ERRORCODE=-4499, SQLSTATE=08001,解決辦法
  4. (5)verilog语言编写呼吸灯
  5. DDK nmake : error 解决方法
  6. 物联网时代商业模式将驱动商业策略的转变
  7. nginx启动报错:Failed to start The nginx HTTP and reverse proxy server.
  8. 任正非发声:把活下来作为最主要纲领;安卓山寨 iOS 启动器下载超 5000 万次;公司停电,程序员去网吧写代码 | EA周报...
  9. 物联网的应用涉及生活的方方面面,在这里介绍一下物联网的多种应用场景
  10. C语言中%d %.2d %2d %02d的区别
  11. RK3568 Android12 长按power键功能设置
  12. 智能车寻线算法之北科寻线可能用的方法
  13. solidworks2014可否保存成以前版本?--问题解决
  14. NanoPi M1 移植 OpenWRT
  15. 基于点线特征的激光雷达+单目视觉里程计
  16. 生态,形态,业态 ---零售业弯道超车
  17. 【shell编程】签到统计上课出勤的记录
  18. 使用U盘作为启动盘重装系统
  19. 股指期货的理论价格与期限套利
  20. 神兔侠儿童安全预警平台正式发布,互联网将为保护儿童安全提供新思路

热门文章

  1. 欧拉公式求四面体体积
  2. python中的pip是什么_python中的pip是什么意思
  3. Java实现 LeetCode 707 设计链表(环形链表)
  4. 计算机固态硬盘装系统,迁移Windows系统到ssd固态硬盘或其他硬盘
  5. 计算机页码格式罗马数字,word 页码 罗马数字怎么从1开始
  6. 3种方法设置和取消Excel文件的打开密码
  7. spark处理大数据实例
  8. 应用Matlab小波变换工具箱进行图像压缩
  9. C语言汉字在内存中如何存储
  10. Excel怎么将两列数据合并成一列