iOS APP打包发布相关事宜

做苹果应用开发和安卓不一样,安卓app开发完了打包成一个APK文件,大家都可以到处分发安装了,苹果APP开发完了需要先在苹果开发者中心去申请证书,然后打包成APP,然后进行测试,然后申请发布到appstore或者通过企业内部分发使用。

苹果的开发者账号分为个人开发者账号、公司开发者账号、企业开发者账号。公司刚开始开发APP时可以先申请个人开发者账号,99美元,一两天就能申请下来,后续也可以升级成公司开发者账号;公司开发者账号,99美元,申请很麻烦,费时很久;企业开发者账号比较独特,299美元,用企业开发者账号申请的证书打包成APP,不能发布到appstore,只能通过plist的方式安装。对公司来说,有些见不得光或者需要尽快推出去尝试的应用可以采用这种方式,对用户来说,这种应用安装后一般不能立即启动使用,需要到设置里去授权信任。

.
苹果开发者账号登录https://developer.apple.com/,有一个“Certificates, Identifiers & Profiles”入口,进入后就是证书申请主界面,全是英文,初次接触的一般搞不定,其实很简单。

一,Certificates
证书,决定哪台mac电脑可以发布程序的。一个开发者帐号,同时只能配置两个证书。这意味着只有两台电脑有利用此开发者帐号进行发布和打包的权限。操作流程是:
1,先选择是Development还是Production,如果是Production,个人开发者账号选择“App Store and Ad Hoc”,企业开发者账号选择“In-House and Ad Hoc”。
2,下一步,苹果出现一个英文说明页面,意思在自己的Mac电脑里找到钥匙串,然后导出“从证书颁发机构请求证书...”的证书CertificateSigningRequest.certSigningRequest
3,再下一步,将自己Mac电脑导出的证书上传。
4,再下一步,下载苹果生成的证书ios_distribution.cer
5,双击这个.cer文件,会自动安装到钥匙串,若没反应,可以手动拖进去。

二,Identifiers
创建要发布的APP的相关信息。
1,App ID Description,填写一个简单文字描述就可以了,比如:快递查询工具
2,App ID Suffix,在这里填写APP的Bundle ID,一般选择第一个Explicit App ID,输入案例:com.baidu.zhidao。为了便于理解,我一般把Bundle ID理解成包名,是该APP的唯一标示符,确定了就不要、不能改。
3,然后再选择该APP要用到哪些服务。注意,并不是全部勾选才好,有时候勾选到多余的东西在申请appstore时会被拒绝。这块没研究透。

三,Devices
设备,哪些移动设备可以运行测试包或可以进行真机调试。一个开发者账号可以添加100个设备。
逐个录入需要加入进去的设备名称和UDID,苹果手机的UDID只能通过iTunes才能查看得到。

四,Provisioning Profiles
将以上的配置合并成一份描述文件。
1,Distribution,发布应用选择App Store,测试打包选择Ad Hoc,企业发布选择In House
2,下一步,选择之前创建的App ID
3,再下一步,选择之前创建的Certificates
4,若是测试发布,还需要选择测试设备。注意,每次添加了新的测试设备,都要到这里重新全部勾选下。
5,区个项目名称xxoo。
6,下载描述文件xxoo.mobileprovision

剩下的就是打包成ipa文件了。