最近需要将一个未发布在AppStore上的应用分发到外地的使用者设备上。其实在之前的项目当中也遭遇过,当时是一款给学校后勤部门使用的任务发布和处理的效率应用,完成后校信息办却没有及时给学校外网权限,美其名曰『测试过后打报告再考虑』,于是乎之后新版本更新,是通过直接将后勤各个领导的手机当测试机运行应用的方式导入的……这次尝试了Ad Hoc配合iTunes或蒲公英两种方式,成功后在此将步骤一一记录。若有大牛知晓更快捷方便的方式,或以下表述存在任何问题,还望不吝赐教。
一 App ID申请
接触iOS开发以来的感触之一便是觉得应用的各种证书配置真是繁琐到让人绝望,Ad Hoc也不例外。在已拥有Apple开发者账号的前提下,登录Apple开发者中心;
在Certificates, Identifiers & Profiles下点击View your account resources,输入开发者账号与密码。
登录成功后,首先要为新应用申请一个App ID,点击左侧Identifiers - App IDs
,然后点击右上角『+』号添加;
其中,Name可以直接�使用App的英文名称,前缀(Prefix)应该是自动生成,后缀(Suffix)按照推荐做法,即反域名格式加App英文名称;
在功能比较简单的情况下,各个选项默认即可。
二 Ad Hoc证书申请
接下来申请Ad Hoc证书,点击左侧Certificates - All
,然后点击右上角『+』号添加,Ad Hoc应属于Production;
点击继续后会提示进行证书请求(CSR),根据下方提示完成即可;
打开钥匙串访问,在证书助理下选择从证书颁发机构请求证书;
用户电邮地址即Apple开发者账号,常用名称可以参考页面提示,CA电邮地址留空,选择存储到磁盘,点击继续会生成一份请求文件;
回到页面,选择刚刚生成的文件,点击Generate;
证书生成成功后,下载到本地。
三 注册设备
设备若想安装Ad Hoc方式分发的测试应用,该设备必须要在该开发者账号中注册,注册时需要设备的UDID;
将iPhone连接至iTunes,成功后iTunes将会显示出iPhone图样;
进入iPhone详细信息页面,单击电话号码下的信息,会切换出UDID,右键拷贝;
回到页面,点击左侧
Devices - All
,点击右上角『+』号添加设备;给设备起一个响亮的名字吧,而不是各种心酸的『Administrator』的iPhone,粘贴该设备的UDID;
注册成功后,可以看到可注册设备的余量。下方提示似乎说,可以每年清空重置一次注册设备。
四 配置文件申请
点击左侧Provisioning Profiles - All
,点击右上角『+』号添加配置文件;
选择
Distribution - Ad Hoc
;
选择该应用的App ID(即刚刚新建的);
选择刚刚申请的Ad Hoc证书;
选择使用设备;
配置文件生成成功,下载。
五 导出ipa
在Xcode Preferences
的Accounts
中,可以看到刚刚生成的配置文件;
将工程
Active Scheme
设置为Generic iOS Device,选择Product - Archive
;
选择右侧Export;
在Select a method for export中,选择Save for Ad Hoc Deployment;
之后该填什么填什么,该选什么选什么。最后会生成一个文件夹,文件夹中即是该应用的ipa。