ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

H5实现苹果绕过AppStore安装内部或测试app

2021-02-18 17:35:13  阅读:342  来源: 互联网

标签:文件 app H5 地址 AppStore https plist 下载


主要流程

  1. 苹果app必须签名成功;
  2. 上传到服务器,获得信息和下载地址,得到两个文件,一个是plist文件和ipa文件,及app图标;
  3. 通过访问plist文件来达到下载ipa文件和图片的目的,使用了苹果safari浏览器自带协议,用a标签或者window.open方式打开plist地址;
itms-services:///?action=download-manifest&url=一个https地址
  1. 信任设备并安装。

下面是几个过程的具体实现

具体实现


上传资源到服务器

公司文件可部署到公司服务器,自己测试文件可以使用github等免费提供文件地址的服务

  • ipa:需要安装的苹果app打包文件,由iOS客户端提供;
  • logo:图片格式的app图标;
  • plist:app下载配置文件。

由客户端生成plist文件

app.plist:由客户端配置或更改下面ipa下载地址、app图标地址及app描述信息。

<?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>https://ipa 下载地址</string>
        </dict>
        <dict>
          <key>kind</key>
          <string>display-image</string>
          <key>needs-shine</key>
          <true/>
          <key>url</key>
          <string>https://app 图标地址</string>
        </dict>
      </array>
      <key>metadata</key>
      <dict>
        <key>bundle-identifier</key>
        <string>com.xxxx.xxxx.xxxx</string>
        <key>bundle-version</key>
        <string>0.1.0</string>
        <key>kind</key>
        <string>software</string>
        <key>title</key>
        <string>APP名称</string>
        <key>subtitle</key>
        <string>App描述</string>
      </dict>
    </dict>
  </array>
</dict>
</plist>

下载页面

Install.html:提供给用户的下载H5页面,具体样式和功能可根据自己的需求调整。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
  <button id="button">下载</button>
  <script>
    document.getElementById('button').addEventListener('click', function() {
      window.open('itms-services:///?action=download-manifest&url=https://pan.xchjw.cn/download/app/CorpPrivateInstall.plist', '_self')
    })
  </script>
</body>
</html>

实现效果

将下载地址提供给需要的人,点击下载按钮即可实现app安装。
市场上很多的分发平台,如蒲公英就是这么做的。


注意:

  • 只可在苹果safari浏览器中实现下载,其他浏览器中打开可做一些引导提示。
  • 需要注意的是从ios7.1开始,http推送plist已经不能用了,只能使用https推送,因此访问这个文件的地址必须是https开头的。你可以配置自己的服务器支持https服务,也可以借助第三方工具。

其他第三方app托管下载服务

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

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/

文章地址:https://www.cnblogs.com/dragonir/p/14412729.html 作者:dragonir

标签:文件,app,H5,地址,AppStore,https,plist,下载
来源: https://www.cnblogs.com/dragonir/p/14412729.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有