当我们开发完app后,需要将ipa/apk提交给测试人员测试,然后才能上线。下面就来看一下如何打包ipa文件,并上传托管平台。
做过ios开发的童鞋都知道,ios为开发者提供了描述文件有2类,有说是3种(说的是iOS App):在Development类下就一种,用于真机调试Debug模式的描述文件;然而在Distribution类下,有2种描述文件。正常情况下,我们会使用App Store——Create a distribution provisioning profile to submit your app to the App Store,来上传包文件到应用市场。另一种是用Ad Hoc——Create a distribution provisioning profile to install your app on a limited number of registered devices。看意思就很清楚,前者用于提交你的APP到APPstore时使用,而后者用于安装你的应用到有限数量的已注册的设备上。而本文要讲的就是第二种了。
Ad Hoc打包
1、创建描述文件
首先,你要是一个开发者,并且有相关证书,然后就可以创建一个Ad Hoc 的描述文件了。然后按照下面的步骤依次选择选择Provisioning Profiles ->All->点击 号。
选择想要安装的测试设备:
然后取个名字,以示区分。
然后下载描述文件。
找到下载文件,双击安装到Xcode ,双击时看到闪一下就说明安装成功了。如果Xcode 是打开的,界面会跳转到Xcode界面。
2、证书签名
在Xcode7之前,真机调试和打包ipa是必须要签名的,但是Xcode7之后,真机调试不需要签名了。但是如果要在其他的机子上安装还是要打签名包的。 签名打包就是在编译的过程中加入证书签名,那肯定是需要去Xcode中配置的,目前网上有方法能实现企业级证书打包签名不需要在编译时,而在编译之后。因此现在打包有两种方式: a、在Xcode中配置code sign,实现签名打包ipa。适用于企业级账号证书、个人账号证书。
在Build Setting下,在code signing里,Code signing Identity依然按照Debug时使用开发证书,Release时使用发布证书;对于描述文件,Provisioning Profile按照Debug时使用开发证书生成的描述文件,而Release使用发布证书生成的描述文件,只是当你选择Distribution时,一定要选测Ad Hoc.
当然,Xcode 9 是可以选择自动配置描述文件的。
b、第二种方式是,在Xcode中无证书打包ipa,使用他人的账号签名ipa。
3.打Xcode证书签名打包
设置有效的Archive配置,如下图所示,这里面一定要选择复制“Release”。
然后取个名字ADHoc。
这里选择刚才复制“Release”的AdHoc,当然你也可以不做第1步,这里直接选择“Release”也是可以的,添加AdHoc纯粹是为了区分,方便管理。
4、Archive 打包
打包之前我们要将编译设备,设置成iOS Device 。 选择Generic ios Device,如果选择其他模拟器是不能Archive的,你会发现他是灰的。
先编译下command B,没错的话执行Archive打包。
这时候选择save for Ad Hoc,上传到appStore。
成功后,选择你想安装的设备上,前提是这些设备已经注册了,如果没有设备的话,请去注册.
然后导出到桌面。
证书我们这边可以借助辅助工具appuploader
Appuploader可以辅助在Windows、linux或mac系统直接申请iOS证书p12,及上传ipa到App Store,最方便在Windows开发上架没有苹果Mac电脑的开发者!配合本教程使用,可以快速掌握如何真机测试及上架!
点击苹果证书按钮
点击新增
输入证书密码,名称
这个密码不是账号密码,而是一个保护证书的密码,是p12文件的密码,此密码设置后没有其他地方可以找到,忘记了只能删除证书重新制作,所以请务必记住密码。还有为了安全起见,密码不要太简单。 证书名称是你为了在证书列表里面便于区别的一个字符,自己好辨识就可以,尽量是是字母和数字之类
选择证书类型
带distribution的是发布类型,带development的是开发类型。
apple类型=ios mac,所以开发时选择ios app development和apple development 类型都是可以的
选择bundle id
只有部分类型的证书需要选择bundle id,例如推送证书。因为大部分证书是不和app关联的。而是通过描述文件profile文件关联app。
使用appuploader同步服务
如果期望制作好证书后在其他电脑上同样可以下载到这个证书,或者和你同事同步此证书,则需要勾选使用appuploader服务同步。否则您需要手动管理p12文件在不同电脑之间的传输,并且一但创建下载后,无法在其他电脑下载,只能手动复制文件过去。一般情况下,推荐使用appuploader服务同步。
证书类型说明
IOS开发选择apple development或者ios app development 类型 ios 发布选择 apple distribution或者 ios distribution (app store and ad hoc) 开发推送证书选择 apple push notification service ssl (sandbox) 发布推送证书选择 apple push notification service ssl (sandbox & production)
其他证书不是很常用,可以自行百度各种证书说明