最近有一项目的要求是不通过苹果商店,二是通过扫描二维码进行下载app,当然了安卓手机是非常容易做到的,这里主要讲述苹果的。以及两个应用合并为一个的知识点。其实很多分发平台就是这样做的。比如:fir.im等等吧。那么接下来我们开始我们的博客内容。

其实分发平台很多是获取你上传的app,会生成两个文件一个是plist文件,通过他我们可以下载对应的ipa文件。

那么plist文件内容是这样的。内容主要是告诉我们下载ipa文件的地址和icon图片的下载地址。这个文件必须通过https的访问才可以。因为现在苹果规定必须以https的方式进行访问

同学们一定很好奇,这中间是怎么一个过程呢。其实是利用苹果自家的浏览器safari和itms-services协议来实现的。

通过itms-services协议,可以通过safari浏览器直接在iOS设备上安装应用程序。利用这种方式,只要在内网布置一个服务器,测试人员只需要通过测试设备的safari浏览器访问特定的url既可以实现安装

当我们上传我们的app到服务器上的时候,我们会把所有的地址存储起来,并把相关的信息都存储在数据库。这样就会在展示页显示我们app的信息:如图所示,此处我是关联了两个程序。其实就是一个字段相互引入各自的下载路径,通过判断设备来进行下载,来实现二维码合二为一。

接下来,在我们的二维码扫描页面,

然后我们看一下手机上,下载按钮连接的地址是什么。其实就是install.php中的内容,里面就是我们通过苹果的协议,来进行下载的连接。

我们来看看install的内容:

那么如果没有https的环境,也没关系,我们可以利用第三方的外链来实现。放到第三方平台,比如七牛云或者码云上去,我这里是放到了码云上去,只需要把这里的地址换成码云上源文件的地址就可以。

那么接下来我们就可以实现扫描二维码下载app到苹果和安卓手机了,那么我们看一下测试的效果:

那么到现在我们实现了通过另外一种方式安装苹果app的方法,这也是很多内部分发平台的实现原理。对于这种的安装方式,在打开APP的时候会提示是否信任此设备。这也是没有从苹果商店下载的好处,你需要去信任这个,至于位置就是在设置——》通用——》设备管理——》此处位置:

当然现在很多分发平台是有直接跳转到这里的功能的。

其实就是一个a标签的连接,直接跳转到设备管理的位置。

说了这么多,整个app的安装过程我们就讲述完了。然后就是可以愉快的使用我们的app了。那么总结一下,主要的知识点就是:

1.苹果app必须签名成功。

2.上传到服务器,获得信息和下载地址,得到两个文件,一个是plist文件和ipa文件,当然还有图片。

3.通过访问plist文件来达到下载ipa文件和图片的目的,使用了苹果的itms-services:///?action=download-manifest&url=一个https地址

4.信任设备。

5.其他知识点:二维合一,就是一个判断,和得到相互的下载地址,然后继续上述的协议,下载app。

市场上很多的分发平台就是这么做的。公司的一个项目需要这样的技术,所以就把整个过程给大家过一遍,希望可以帮助更多的人,来了解一下这个技术。与所有程序爱好者共勉.......

苹果安装app的另一种方式(通过itms-services协议,不通过AppStore,直接安装IOS应用程序)相关推荐

  1. 【Linux安装和更新】两种方式更换软件源,以JDK为例安装

    文章目录 本博客以Ubuntu系统为例 一.apt工具 (一)命令修改文件 (二)手动修改文件 (三)安装JDK 1.命令安装 二.wget工具 (一)下载安装谷歌浏览器 1.下载或上传.deb文件 ...

  2. Eclipse安装SVN插件的两种方式

    登录 | 注册 收藏成功 确定 收藏失败,请重新收藏 确定 查看所有私信查看所有通知 暂没有新通知 想要绕过微信小程序开发中的坑吗?不妨来听这个,今晚8点,1小时帮你搞定! 23小时以前 CSDN日报 ...

  3. 详解移动App开发的几种方式和各自详细的优缺点,以及如何选择App开发模式,最全总结,一次讲清

    移动App开发的几种方式 原生App,即NativeApp WebApp HybridApp,(完全依赖原生App中的WebView组件,本质上只是对WebView组件做更多的扩展,为它提供更多的ap ...

  4. 苹果电脑的系统安装的几种方式

    苹果电脑的系统安装的几种方式 第一种:官方恢复,方法:按下电源按钮以开启 Mac 之后或 Mac 开始重新启动之后,立即在键盘上按住 Command-R 键或某个其他 macOS 恢复功能组合键.继续 ...

  5. Linux之Ubuntu20.04安装Java JDK8的两种方式

    Linux之Ubuntu20.04远程安装Java JDK8的两种方式 安装openjdk8 更新软件包列表: sudo apt-get update 安装openjdk-8-jdk: sudo ap ...

  6. 【iOS开发】ipa安装到手机上的三种方式

    转载地址:ipa安装到手机上的三种方式 ipa包 安装三种方式,优先推荐第一种方法(通过iTunes安装). 1.通过iTunes安装 数据线连接手机之后,会自动连接iTunes,(第一次连接的时候会 ...

  7. android 点赞姓名列表,从类型和列表内容分析:APP点赞的3种方式

    原标题:从类型和列表内容分析:APP点赞的3种方式 收集了大量APP点赞列表,通过对比,主要有三种方式.三种方式都从APP的类型.点赞的列表内容量两个方向来分析. 如下图: 一.点赞列表和评论.转发. ...

  8. 使用brew安装历史版本的几种方式

    背景 在 mac osx 下, 大部分的软件都是使用 homebrew 进行管理的, 可以方便的进行软件的安装,更新,删除等等, 大部分情况下 homebrew 的仓库只会存在一份最新的软件版本, 有 ...

  9. App打包的两种方式

    在HBuilder上对APP提供了两种打包方式,云打包和本地打包,下面主要对这两种打包方式做个介绍 两者的区别:云打包相对简单,但是每天最多只能打包五次,而且在高峰期打包时间可能会很长,本地打包相对比 ...

  10. Linux Centos7.x 安装部署Mysql5.7几种方式的操作手册

    简述 Linux  Centos7.x 操作系统版本下针对Mysql的安装和使用多少跟之前的Centos6之前版本有所不同的,下面介绍下在centos7.x环境里安装mysql5.7的几种方法: 一. ...

最新文章

  1. 基于ssm框架的大学生社团管理系统
  2. 使用CATT作批量数据导入
  3. 论文阅读 - CRNN
  4. 涂抹果酱_如何玩果酱
  5. 成也标签败也标签--真实的模型案例分享
  6. 机器学习第二回——多变量线性回归
  7. jQuery 知识点大纲
  8. 力控组态软件 mysql_组态软件国内那家做的好?推荐几个比较一下
  9. linux考试试题及答案填空题,Linux认证考试试题及答案(20210511022419)
  10. excel多个窗口独立显示_细说丨你想要的Excel保护与加密都在这里
  11. PLSQL下载、安装、配置、连接详细教程
  12. python用实现FGO自动挂机战斗思路
  13. 拳皇觉醒服务器维护,拳皇觉醒手游预约_腾讯拳皇觉醒新版v1.0.0_第一手游网
  14. 微信验证服务器地址有效性
  15. 美味冰皮月饼的做法 月饼的做法
  16. fluent对旋转物体的仿真(moving mesh)
  17. R语言 如何绘制文章的词云图——从分词到绘图(it-idf权重)
  18. python爬虫豆瓣电影评价_Python 爬虫实战(1):分析豆瓣中最新电影的影评
  19. html图片纵向无缝滚动,HTML内容或图片无缝滚动技巧
  20. 操作系统OS linux实验日记

热门文章

  1. 地球经纬度转换为unity球面坐标
  2. python_open函数中newline参数详解
  3. 计算机型号win7,win7cpu型号怎么看
  4. 世界坐标系和相机坐标系,图像坐标系的关系
  5. iOS开发 - 关于微信分享后,提示“未验证应用”的解决办法,配置 Universal Link
  6. bzoj 5369 最大前缀和
  7. Aqua Comms携手Ciena 测试海底光缆网络150Gbps波长传输
  8. 矩阵分析与应用-16-广义逆矩阵
  9. ajax报502错误,ajax服务器返回502
  10. 【零基础】入门51单片机图文教程(Proteus+Keil)