发布 Ionic iOS 企业级应用
转自:http://www.jianshu.com/p/c12fae498975
Ionic 项目开发完成之后呢,自然就是打包发布了,今天说说 iOS 的打包和发布。
iOS 的发布方式分为三种:iOS App Store、In-House、Ad-Hoc。下面我列举了一些主要的区别:
| 发布类型 | 开发者计划 | 是否需要苹果审核 | 发布方式 | 支持安装设备数量 |
|---|---|---|---|---|
| iOS App Store | 个人、公司、教育 | 需要 | 发布到 iOS 应用商店 | 无限制 |
| In-House | 企业开发者计划 | 不需要 | 发布到网站上给用户下载 | 无限制 |
| Ad-Hoc | 所有 | 不需要 | 拷贝给用户安装 | 100 |
由于我现在只有企业开发者计划帐号,所以就说说 In-House 的发布吧
本文仅适用于企业开发者帐号,个人开发者帐号请略过,本文不适用
为项目添加 Provisioning Profile
1、登录苹果开发者网站,找到 Certificates, Identifiers & Profiles 这个页面
2、在页面左侧列表的上边有一个下拉框,选择 “iOS,tvOS,watchOS” 选项
3、点击左侧列表中的 “App IDs” 项打开 iOS App IDs 页面,点击右边的 “+” 按钮添加一个 App ID
App ID Description 的 Name 字段填写 App 的名字,我一般都填的英文名
App ID Suffix 选择 “Explicit App ID” 单选按钮,Bundle ID 字段填写一个全球唯一的标识,公司项目就填 “com.公司英文缩写.项目英文缩写”
App Services 那里选择要启用的服务,然后点击下方的 Continue 按钮来到 Confirm your App ID 页面,确认下无误后直接点击下方 Register 按钮完成添加操作
4、点击左侧列表中 Provisioning Profiles 节点下的 Distribution 项打开 iOS Provisioning Profiles(Distribution) 页面,点击右边的 “+” 按钮添加一个 Provisioning Profile
在 Select Type 页面选择 Distribution 节点下的 “In House” 单选框,点击下方 Continute
在 Select App ID 页面选择之前添加的 App ID,点击下方 Continute
在 Select Certificates 页面选择企业开发者证书,点击下方 Continute
在 Generate 页面填写 Profile Name,可以跟 App ID 的 Name 一致,点击下方 Continute
Provisioning Profile 生成成功后点击 Download 按钮下载下来然后双击安装即可
打包 Ionic 应用
iOS 应用的打包很简单:
1、使用 XCode 打开 Ionic 项目目录下的 “./platforms/ios/ProjectName.xcodeproj” 文件
2、打开 XCode 菜单中的 Preferences 项,在 Accounts 选项卡中添加企业开发者帐号的 Apple ID
3、点击 Project Navigator 中的项目文件,在中间 General 选项卡中 Identity 节点下选择 Team 下拉框中选择你的企业帐号
4、在 XCode 左上角运行配置那里选中 “Generic iOS Device” 项
5、在 XCode 菜单中选择 Product -> Archive 即可
导出 Ionic 应用
1、在 XCode 菜单中选择 Window -> Organizer,在上方选项卡中选择 Archives
2、在 iOS Apps 列表中选中要发布的应用,在窗口中间选中打好的包,点击窗口右边的 Export 按钮
3、在 Select a method for export 窗口中选择 Save for Enterprise Deployment,点击 Next
4、在 Select a Deployment Team 窗口中选择你的开发团队,点击 Choose
5、在 Deveice Support 窗口选择 Export one app for all compatible devices,如果你发布的应用只针对某个设备,请选择 Export for specific device,并在下拉框中选择设备名称,然后点击 Next
6、在 Summary 窗口中直接点击 Next
7、在 Distrbution manifest infomation 窗口中随便填,能通过验证就行,后面再改
8、选择要导出的位置,点击 Export 导出
发布 Ionic 应用
1、将导出的 ipa 文件上传到支持 SSL 的站点并记录下 URL
2、修改导出的 plist 文件,找到 software-package 节点,把 ipa 文件的 URL 替换上去,URL 必须是以 https 开头。后面两个图片节点可以注释掉或者删掉
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>https://test.duapp.com/files/app.ipa</string>
</dict>
<!-- <dict>
<key>kind</key>
<string>display-image</string>
<key>url</key>
<string>https://localhost/app.png</string>
</dict>
<dict>
<key>kind</key>
<string>full-size-image</string>
<key>url</key>
<string>https://localhost/app.jpg</string>
</dict> -->
</array>
3、把 plist 文件也上传到支持 SSL 的站点并记录下 URL
4、制作 app 下载页面,将下载链接指向 plist 文件的 URL 即可。下载链接的示例如下:
<a href="itms-services://?action=download-manifest&url=https://test.duapp.com/files/manifest.plist">下载App</a>
5、将 app 下载页面发布到公司网站,在手机中打开站点测试能否成功下载
由于苹果要求 iOS 企业应用发布的站点必须要有 SSL 证书,由于公司的网站不具备条件,所已我将 ipa 文件和 plist 文件上传到了百度云的 BOS 上面
原文链接:http://www.jianshu.com/p/c12fae498975
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
发布 Ionic iOS 企业级应用的更多相关文章
- IBM发布AppScan Source 8.7:减少iOS企业级应用安全风险
IBM发布AppScan Source 8.7:减少iOS企业级应用安全风险http://automationqa.com/forum.php?mod=viewthread&tid=2570& ...
- iOS企业级开发初级课程-表视图(13集)
首先了解了表视图的组成.表视图类的构成.表视图的分类以及表视图的两个重要协议(委托协议和数据源协议),对表视图有了一个整体上的认识.接下来我们掌握了如何实现简单表视图和分节表视图,以及表视图中索引.搜 ...
- 转《发布ionic应用到App Store的完整步骤 》
当我们开发完一个应用,就到了发布到市场的时候,Android的打包比较简单,签名之后可以放在我们自己的服务器上,让用户扫描二维码来下载,而苹果的就比较麻烦了,如果内测可以通过蒲公英等内测分发平台,但是 ...
- Unity 发布到IOS,Android的各种坑
Unity 发布到IOS的注意事项1.开发环境MAC环境:Xcode环境 7.2.1Unity环境:Unity5.32.基本说明首先,我说一下,这是我在对Unity发布到IOS的实际使用中,总结出来的 ...
- ionic ios项目真机运行-不用开发者账号
ionic ios项目真机运行-不用开发者账号 1. 添加ios平台 ionic platform add ios 2.使用XCODE打开项目 3.使用APPID登录XCODE 打开XCODE账号登录 ...
- Unity发布至IOS的流程(踩坑记录)
这篇文章主要用于记录本人亲身经历过的Unity发布到IOS平台所遇到的所有坑(其实也就是一些自己并不明白的强制设定),以便于后续再有类似需求时少走些弯路. 我的环境: Unity 5.2.2 个人版( ...
- Windows Unity ARKit发布到IOS相关设置及错误解决
Windows 版Unity安装: 考虑到在虚拟机中运行Unity比较卡,所以采用在Windows Unity上将项目发布好然后再复制到Mac虚拟机中通过XCode进行编译的方式. Unity版本为 ...
- 包建强的培训课程(7):iOS企业级开发实战
@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...
- ionic ios 发布设置 header-bar高度无效
在公司app发布过程中发现一旦改过header-bar的高度之后在ios内部或者通过ionic build browser生成的网页打开都不是正常的 通过chrome的查看工具发现自己写的样式被直接覆 ...
随机推荐
- yii开发一个web程序的基本流程
1. 创建目录结构.在前面的章节Creating First Yii Application写的yiic工具可以帮助我们快速完成这步. 2. 配置 application.就是修改applicatio ...
- PHP面向对象实例(图形计算器)
效果:
- CentOS 7 网络配置工具
之前在CentOS 6下编辑网卡,直接使用setup工具就可以了. 但在新版的CentOS 7里,setuptool已经没有网络编辑组件了,取而代之的是NetworkManager Text User ...
- Cisco ASA 配置案例---anyconnect拨通后所有流量从服务器端出去
一.目的: 1.Cisco ASA之Lan端能正常上网. 2.anyconnect端所有流量从Cisco ASA的Outside出去. 3.anyconnect端能访问Cisco ASA的Inside ...
- 面向小白的JS笔记 - #Codecademy#学习笔记
前言 最初浏览过<JavaScript秘密花园>,前一段时间读过一点点<JavaScript语言精粹>和一点点<JavaScript高级程序设计>(一点点是指都只是 ...
- easyui 筛选数据及仅允许选择数据
先说需求,本地已缓存数据源,用户输入拼音码或编号,筛选数据作为新的数据源,然后通过键盘选择. 再说问题,easyui combogrid控件,在mode为local,也就是将数据源缓存在本地的情况下, ...
- 什么是 JSON ?
什么是 JSON ? JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) JSON 是轻量级的文本数据交换格式 JSON 独立于语言 JSON ...
- 《剑指offer》面试题11: 数值的整数次方
面试题11: 数值的整数次方 剑指offer面试题11,题目如下 实现函数double power(double base,int exponent),求base的exponent次方, 不得使用库 ...
- 问题:https与http有什么区别啊?
HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议 它是一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务器之间交换信息.它使用安全套接字 ...
- Decorator实现AOP编程。
Program.cs class Program { static void Main(string[] args) { User user = " }; var processor = T ...