iOS企业版打包 发布在线安装包 plist
本文转载至 http://blog.csdn.net/u011452278/article/details/49511385
原文转载:http://blog.csdn.net/pang040328/article/details/40924737
新版的xcode(6.1)在导出企业级ipa时并没有“saved for enterprise distribution”这个选项,所以需要手动添加该plist文件。
必备条件:1、申请 iOS Developer Enterprise Program,需要$299/年;
2、需要一个有效的SSL证书(访问plist文件用到),可以来着http://www.freehao123.com/startssl-ssl/ 搞一个;
具体步骤如下:
1、创建Production 证书
点击红色方框的+图标
选择In-house and Ad Hoc,由于已经创建过该类证书,所以不能再次创建。点击continue后会要求上传证书请求文件,具体的证书创建过程请参考http://blog.csdn.net/abbottsuccess/article/details/4445160。证书生成后下载(cer)文件,双击安装,可在钥匙串中查看到已安装的证书
2、创建Provisioning Profiles
选择In House ,点击继续
选择App ID(关于如何创建APP ID请查看步骤一的链接),继续
选择步骤一创建的发布证书(别选错),继续
下载,之后双击安装该文件(安装时间很短,确定双击即可)
3、创建IPA及plist
打开Xcode,点击左上角的工程名称,在TARGETS中点击工程名,选中顶部的General, Team选择为在 iOS Developer Enterprise Program创建的账号。
选择工程,在Build Settings中的Code Signing中将Debug、Distribution、Release全选择为步骤一中安装好的证书,Provisionning Profile选择为所下载的那个文件。返回到TARGETS,在Build Settings中进行同样的操作。
在Xcode的菜单栏上选择Product -> Archive
选择 Export,
选择Save for Enterprise Deployment,next
按要求选择账号,然后继续即可,最后就是导出ipa了(注意,没有任何Save for Enterprise选项)
截止目前为止,ipa已经生成了,但是由于6以上的xcode已经不支持自动生产plist文件,所以需要自己创建plist文件。Dropbox有个样例,可以参考一下https://www.dropbox.com/s/a8hpnmq654pmbaw/AppName.plist?dl=0
4、通过网络安装ipa
注意:plist文件的名称必须跟ipa文件名称一致
1)将plist与ipa文件上传至服务器,
- 创建网页,包含如下代码:<a href="itms-services://?action=download-manifest&url=https://mydomain.com/apps/MyInHouseApp.plist" id="text">Install the In-House App</a>
url必须是https,否则ipa无法安装。
2)有些服务器可能还需要配置一些mime type,如下:
application/octet-stream ipa text/xml plist
- 原始plist文件如下:
- <?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>THE URL FOR YOUR IPA: ex: http://go.com/appname.ipa</string>
- </dict>
- <dict>
- <key>kind</key>
- <string>full-size-image</string>
- <key>needs-shine</key>
- <true/>
- <key>url</key>
- <string>THE URL FOR INSTALLATION @2x ICON: ex: http://go.com/Icon@2x.png</string>
- </dict>
- <dict>
- <key>kind</key>
- <string>display-image</string>
- <key>needs-shine</key>
- <true/>
- <key>url</key>
- <string>THE URL FOR INSTALLATION ICON: ex: http://go.com/Icon.png</string>
- </dict>
- </array>
- <key>metadata</key>
- <dict>
- <key>bundle-identifier</key>
- <string>YOUR BUNDLE ID (Take it from your Xcode Project)</string>
- <key>bundle-version</key>
- <string>1.2.3 Your app version</string>
- <key>kind</key>
- <string>software</string>
- <key>title</key>
- <string>The Title To Present To The User installing the app</string>
- </dict>
- </dict>
- </array>
- </dict>
- </plist>
我在刚开始测试时,没有指定<full-size-image>和<display-image>段的图片地址,导致应用在ios6和ios7设备上可以安装,但ios8设备上可以下载无法安装,大家可以注意一下这个问题;
另外<bundle-identifier>段,这里的注释是“输入你的BUNDLE ID(可以从XCODE的工程中获取)”。但我输入的是potal中完整的APPID,形如"X6J85AD.com.xx.xx"这样,也可以正常下载和安装。
- plist存放位置
plist下载必须使用https协议,要么就花钱买个SSL证书给网站添加https支持,
不想花钱的可以使用OSChina的代码托管。
访问https://Git.oschina.NET,添加一个项目;然后用git或svn客户端将plsit文件提交到版本库中;最后在浏览器中访问项目中的plsit文件,查看原始数据,即可获得plsit的https下载地址。
最后贴图,证明上述所说的都不是扯蛋
iOS企业版打包 发布在线安装包 plist的更多相关文章
- 【Android Studio安装部署系列】十、Android studio打包发布apk安装包
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 使用Android studio发布apk安装包的操作步骤. 开始打包发布apk Build > Generate Signe ...
- iOS 平台上常见的安装包有三种,deb、ipa 和 pxl
前言:目前 iOS 平台上常见的安装包有三种,deb.ipa 和 pxl. 其中 deb 格式是 Debian 系统(包含 Debian 和 Ubuntu )专属安装包格式,配合 APT 软件管理系统 ...
- iOS企业版打包(转载)
转自 http://www.cnblogs.com/shenlaiyaoshi/p/5472474.html 神来钥匙-陈诗友 iOS 企业版 打包 使用 iOS 企业版的证书发布应用可以跳过 A ...
- iOS 企业版 打包
iOS 企业版 打包 使用 iOS 企业版的证书发布应用可以跳过 Appstore,直接发布到自己的网站,让其他人在自己的网站上下载安装,但前提是要用苹果自带的Safari 浏览器才能下载安装,其他浏 ...
- Mac Jenkins+fastlane 简单几步实现iOS自动化打包发布 + jenkins节点设置
最近在使用jenkins 实现ios自动化打包发布蒲公英过程实践遇到了一些坑,特意记录下来方便有需要的人. 进入正题: 一.安装Jenkins 1.Mac上安装Jenkins 遇到到坑 因为 Jenk ...
- 利用Advanced Installer将asp.netMVC连同IIS服务和mysql数据库一块打包成exe安装包
因为业务需要,项目中需要把asp.netmvc项目打包成exe安装程序给客户,让客户直接可以点下一步下一步安装部署web程序,并且同时要将IIS服务和mysql一同安装到服务器上,因为客户的电脑可能是 ...
- 如何给windows窗体程序打包成一个安装包
http://blog.csdn.net/xyy410874116/article/details/6341787 给windows窗体程序打包成一个安装包:具体操作在:http://hi.baidu ...
- 【2】IOS APP打包发布
目的: 本文的目的是对IOS APP打包发布做了对应的介绍,大家可根据文档步骤进行mac环境部署: 申请苹果开发者账号 此处略 创建申请证书 这样做的目的就是为你的电脑安装发布许可证,只有这样你的电脑 ...
- 使用VS2015打包winform程序安装包简单方法(不需要InstallShield)
转载自: DGPLM博客 使用VS2015打包winform程序安装包简单方法(不需要InstallShield)
随机推荐
- poj3280 Cheapest Palindrome(回文串区间dp)
https://vjudge.net/problem/POJ-3280 猛刷简单dp第一天第三题. 这个据说是[求字符串通过增减操作变成回文串的最小改动次数]的变体. 首先增减操作的实质是一样的,所以 ...
- Android的Databinding-单向绑定
两种方式实现观察绑定. 一.POJO类实现android.databinding.Observable,在属性set方法中调用notifyPropertyChanged(BR.lastName); 其 ...
- 最课程阶段大作业06:U度节能平台控制系统
除了互联网项目,当今社会还有一个概念非常流行,那就是:物联网.什么是物联网?物联网是通过传感设备,按约定的协议,把任意物品与互联网相连接,进行信息交换和通信,以实现智能化识别.定位.跟踪.监控和管理的 ...
- 【性能提升神器】Covering Indexes
可能有小伙伴会问,Covering Indexes到底是什么神器呢?它又是如何来提升性能的呢?接下来我会用最通俗易懂的语言来进行介绍,毕竟不是每个程序猿都要像DBA那样深刻理解数据库,知道如何用以及如 ...
- 【Java-JPA】让Springboot启动不检查JPA的数据源配置
#https://stackoverflow.com/questions/24074749/spring-boot-cannot-determine-embedded-database-driver- ...
- webpack 配置缓存
1.输出文件的文件名 加hash 2.提取引导模板 3.模块标识符 https://webpack.docschina.org/guides/caching/#src/components/Sideb ...
- EAS开发之挂菜单
一:以管理员账号登录 二:挂菜单 点击菜单栏"系统"——客户化菜单编辑——选中上级目录——点击 新建——命名.键入唯一编码,把ui.java类的全路径,拷贝到 ...
- git合并指定文件到另一分支
经常被问到如何从一个分支合并特定的文件到另一个分支.其实,只合并你需要的那些commits,不需要的commits就不合并进去了. 合并某个分支上的单个commit 首先,用git log或sourc ...
- php: 统计在线人数
<?php $filename='online.txt';//数据文件 $cookiename='VGOTCN_OnLineCount';//cookie名称 $onlinetime=60;// ...
- [windows+cocos2dx]文本类
文字也是游戏最重要的元素之中的一个,以下就看看使用动态字体和静态字体库怎样创建文字.使用动态字体库创建的文字能够包括经常使用的不论什么字符,一般假设用户要输入名字,这就最好用动态字体库.由于你不知道用 ...