返回列表 发布新帖

ipa下载安装所需的plist文件

44 0
发表于 2024-12-2 16:31:25 | 显示全部楼层 阅读模式
要发布还必须有一个plist文件,在Xcode6之前会自动生成一个plist文件,但是Xcode6之后需要我们自己创建plist,文章最后提供一个plist模板,复制并重命名为plist后打开根据提示操作即可.图18为plist的截图,可以看到有三个URL,分别存放ipa,大小图标。下图的1(ipa)、2(大图)、3(小图)填写我们自己生成的URL,即将ipa和大小图标放在我们自己的服务器,当用Safari打开plist时会根据填的plist里面的1、2、3对应的URL来下载安装ipa、大小图标。



下面是plist模板的文本形式,将其复制到文本然后重命名.plist,用Xcode打开按照提示编辑即可。

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  3. <plist version="1.0">
  4. <dict>
  5.     <key>items</key>
  6.     <array>
  7.         <dict>
  8.             <key>assets</key>
  9.             <array>
  10.                 <dict>
  11.                     <key>kind</key>
  12.                     <string>software-package</string>
  13.                     <key>url</key>
  14.                     <string>ipa包URL(必填)</string>
  15.                 </dict>
  16.                 <dict>
  17.                     <key>kind</key>
  18.                     <string>full-size-image</string>
  19.                     <key>needs-shine</key>
  20.                     <false/>
  21.                     <key>url</key>
  22.                     <string>下载时大图(非必填)</string>
  23.                 </dict>
  24.                 <dict>
  25.                     <key>kind</key>
  26.                     <string>display-image</string>
  27.                     <key>needs-shine</key>
  28.                     <false/>
  29.                     <key>url</key>
  30.                     <string>下载时小图(非必填)</string>
  31.                 </dict>
  32.             </array>
  33.             <key>metadata</key>
  34.             <dict>
  35.                 <key>bundle-identifier</key>
  36.                 <string>BundleID(必填)</string>
  37.                 <key>bundle-version</key>
  38.                 <string>1.0</string>
  39.                 <key>kind</key>
  40.                 <string>software</string>
  41.                 <key>subtitle</key>
  42.                 <string>副标题(非必填)</string>
  43.                 <key>title</key>
  44.                 <string>应用名(必填)</string>
  45.             </dict>
  46.         </dict>
  47.     </array>
  48. </dict>
  49. </plist>
复制代码
,Plist是一种文件形式,通常用于储存用户设置,也可以用于存储捆绑的信息,该功能在旧式的Mac OS中是由资源分支提供的。由于Plist中存储的数据是抽象的,其采用的文件格式可以不止一种。
2,它是IOS开发过程中常用来捆绑信息的一种文件格式,它是数据格式是xml

补充: ipa文件
IPA是Apple程序应用文件iPhoneApplication的缩写,ipa格式就是IOS系统安装包的链
.plist下载地址格式:
<a href="itms-services://?action=download-manifest&url=https://www.baidu.com/ios/ceshi.plist"></a>

  • 举个例子:

在此安装包暂命名为:Mytest.ipa

  • 1.编写安装配置文件(Mytest.plist)

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  3. <plist version="1.0">
  4. <dict>
  5.     <key>items</key>
  6.     <array>
  7.         <dict>
  8.             <key>assets</key>
  9.             <array>
  10.                 <dict>
  11.                     <key>kind</key>
  12.                     <string>software-package</string>
  13.                     <key>url</key>
  14.                     <!-- 需要安装的ipa包在服务器的路径 -->
  15.                     <string>https://www.example.cn/ipa/mytest/Mytest.ipa</string>
  16.                 </dict>
  17.                 <dict>
  18.                     <key>kind</key>
  19.                     <string>full-size-image</string>
  20.                     <key>needs-shine</key>
  21.                     <true/>
  22.                     <key>url</key>
  23.                     <!-- 安装时需要显示的大图标(1024*1024)在服务器的路径 -->
  24.                     <string>https://www.example.cn/ipa/mytest/icon_full_size_s.png</string>
  25.                 </dict>
  26.                 <dict>
  27.                     <key>kind</key>
  28.                     <string>display-image</string>
  29.                     <key>needs-shine</key>
  30.                     <true/>
  31.                     <key>url</key>
  32.                     <!-- 安装时需要显示的小图标(180*180)在服务器的路径 -->
  33.                     <string>https://www.example.cn/ipa/mytest/icon_display_s.png</string>
  34.                 </dict>
  35.             </array>
  36.             <key>metadata</key>
  37.             <dict>
  38.                 <key>bundle-identifier</key>
  39.                 <string>com.mcrazy.Mytest</string>
  40.                 <key>bundle-version</key>
  41.                 <string>1.1.4</string>
  42.                 <key>kind</key>
  43.                 <string>software</string>
  44.                 <key>title</key>
  45.                 <string>测试客户端</string>
  46.             </dict>
  47.         </dict>
  48.     </array>
  49. </dict>
  50. </plist>
复制代码
  • 2.上传配置文件(Mytest.plist)至服务器


用nginx或tomcat提供外部访问,下面在前端安装网页上就要用到此外部访问url: https://www.example.cn/ipa/mytest/Mytest.plist
  • 3.制作前端访问H5网页,触发安装事件


H5网页:Mytest.html

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.     <meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/>  
  5.     <meta charset="UTF-8">
  6.     <title>Ad Hoc .ipa在线安装</title>
  7.     <style>
  8.         *{
  9.             margin: 0px;
  10.             padding: 0px;
  11.         }

  12.         .download_div{
  13.             width: 100%;
  14.             height: 100%;
  15.             text-align: center;
  16.             font-weight: bold;
  17.             /*background: -webkit-gradient(linear,0 0,0 bottom,from(#dbeae0),to(hsla(0,0%,100%,.6)));*/
  18.             font-size: 2em;
  19.         }

  20.         .download_title{
  21.             padding-top: 1em;
  22.             padding-bottom: 1em;
  23.             /*background-color: #d7e2f7;*/
  24.             background: -webkit-gradient(linear, left top, left bottom, from(#d7e2f7), to(#ffffff));
  25.         }
  26.         .img_app_overview {
  27.             width: 100%;
  28.             height: 480px;
  29.             display: block;
  30.         }

  31.         .download_button{
  32.             /*margin-top: -0.3em;*/
  33.             background: -webkit-gradient(linear,left top,left bottom,from(#879ee3), to(#ffffff));
  34.             width: 100%;
  35.         }

  36.         .button{
  37.             /*margin-top: 5em;*/
  38.             margin-left: 0.8em;
  39.             display: inline-block;
  40.             outline: none;
  41.             cursor: pointer;
  42.             text-align: center;
  43.             text-decoration: none;
  44.             font: 14px/100% Arial, Helvetica, sans-serif;
  45.             padding: .5em 2em .55em;
  46.             text-shadow: 0 1px 1px rgba(0,0,0,.3);
  47.             -webkit-border-radius: .5em;
  48.             -moz-border-radius: .5em;
  49.             border-radius: .5em;
  50.             -webkit-box-shadow: 0 1px 2px rgba(0,0,0,.2);
  51.             -moz-box-shadow: 0 1px 2px rgba(0,0,0,.2);
  52.             box-shadow: 0 1px 2px rgba(0,0,0,.2);
  53.             color:#fff;
  54.         }

  55.         .button_green{
  56.             background: #c8dd95;
  57.             background: -webkit-gradient(linear, left top, left bottom, from(#7a71d0), to(#ffffff) );
  58.             background: -moz-linear-gradient(-90deg, #7a71d0, #ffffff);
  59.         }

  60.         .download_tips{
  61.             font-size: 0.5em;
  62.             margin-top: 1em;
  63.             font-weight: normal;
  64.             margin-top: 3em;
  65.         }

  66.         .button_top{
  67.             margin-top: 3em;
  68.         }

  69.         a:hover, a:visited, a:link, a:active {
  70.             text-decoration: none;
  71.             color: #fff;
  72.         }

  73.         /*mobile*/
  74.         @media screen and (max-width: 1199px){
  75.             .img_app_overview {
  76.                 width: 100%;
  77.                 height: 250px;
  78.                 display: block;
  79.             }
  80.         }
  81.     </style>
  82. </head>
  83. <body>
  84.     <div class="download_div">
  85.         <p class="download_title">测试安装包v1.1.4</p>
  86.         <img class="img_app_overview" src="img_app_overview.png" alt="Mr.chao">
  87.         <div class="download_button">
  88.             <button class="button button_green button_top" onclick="downloadClientApp();"><a href="javascript:void(0);">点击安装app</a></button>
  89.             <!-- <button class="button button_green button_top"><a href="{{androidAUrl}}">Android客户端下载</a></button> -->
  90.             <div class="download_tips">
  91.                 <strong>微信扫描</strong>下载,<strong>请点击右上角</strong>,<br />选择“<strong>在浏览器中打开</strong>”即可安装下载
  92.             </div>
  93.         </div>
  94.     </div>
  95.     <script>
  96.         var downloadClientApp = function() {
  97.             // 在此用到配置文件(Mytest.plist)的外部链接
  98.             window.location.href='itms-services:///?action=download-manifest&url=https://www.example.cn/ipa/mytest/Mytest.plist';
  99.         }
  100.     </script>
  101. </body>
  102. </html>
复制代码
更简单的html:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.    <meta charset="UTF-8">
  5.    <title>bitspot App下载</title>
  6. </head>
  7. <body>
  8. <a href="itms-services://?action=download-manifest&url=https://www.example.cn/ipa/mytest/Mytest.plist">点击安装</a>
  9. </body>
  10. </html>
复制代码
  • 4.安装


将H5网页部署在服务器上,需要有能Https访问证书

手机浏览器访问H5安装界面


点击安装

ending…

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
温馨提示:
1、在社区里发表的文章仅代表作者本人的观点,与本网站立场无关。
2、社区的所有内容都不保证其准确性,有效性,时间性。阅读本站内容因误导等因素而造成的损失本站不承担连带责任。
3、当政府机关依照法定程序要求披露信息时,论坛均得免责。
4、若因线路及非本站所能控制范围的故障导致暂停服务期间造成的一切不便与损失,社区不负任何责任。
5、注册会员通过任何手段和方法针对社区进行破坏,我们有权对其行为作出处理。并保留进一步追究其责任的权利。
回复

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

投诉/建议联系

990037279@qq.com

如果有侵犯到您的权益,
请第一时间联系邮箱,
站长会进行审查,情况属实的会在三个工作日内为您删除。
  • 关注公众号
  • 添加微信客服
Copyright © 2001-2024 生活的趣事 版权所有 All Rights Reserved. 浙ICP备2022006091号-1
关灯 快速发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表