最近又在用AppCan做应用,由于我的 iPhone 是6.1的系统无法越狱,所以,只好按正式版的打包;
以前弄过一次,但已经过去好几个月了,加上当时就是迷迷糊糊的,不知道怎么就弄好了于是,现在又悲哀了。
因为AppCan在收费,所以对免费的支持……(只能表示理解了,不过收费也太tmd的贵了,最低档次都是2万多,尼玛苹果开发者也不过99刀啊)
不吐槽了,出那个错的原因就是在于Provisioning Profiles 和 Certificates 不对应,当然也有可能是你的appid填写错了,注意不要前面那截怪怪的字串,只要从com开头(包括com)的部分。
之前一直没搞清楚Provisioning Profiles 和 Certificates有啥联系,以往都是点下一步,今天仔细看了,截个图,看图就能明白Provisioning Profiles 和 Certificates有啥联系了
1 开发Provisioning Profiles(注意打包不能使用开发版的Provisioning Profiles,我这里是通过让你看到建立开发版的Provisioning Profiles时,苹果会让你选择证书——来让你知道Provisioning Profiles 和 Certificates的联系是建立Provisioning Profiles需要选择Certificates)
注意不能使用开发版本的打包!!!
2 正式(Distribution)Provisioning Profiles
注:上面两个界面在添加、修改Provisioning Profiles的时候都可以看到
同样的,建立正式版的Provisioning Profiles也是要选择Certificates,正式版Provisioning Profiles和开发版Provisioning Profiles的建立过程区别是正式版的只能选择一个正式的Certificates、开发版的Provisioning Profiles可以选择多个Certificates。
建立Provisioning Profiles的要点:
1、 需要选择一个appid,务必选择你需要的appid,记住他,打包时要填写的
2 、需要选择一个证书,这个证书你需要下载并“安装”到你的mac上,双击安装后,在串钥匙管理可用看到他,并且他带有一个小箭头(有小箭头的,就是你用当前mac申请的,没有的导出的p12是不能使用的、是错的),然后导出为p12
3、 ad hoc版要选择测试的设备,苹果版没有这个项目,不需要选择
所以当你appcan打包遇到App IDs not match,那么可能的问题有以下:
1 appid写错了——确定appid是Provisioning Profiles建立时你选择的那个
2 p12和mobileprovision不对应(p12就是Certificates证书的导出格式)——确定你你导出的p12,是你Provisioning Profiles建立时你选择的那个,并且你有私钥(即看起来有小箭头 —— 换句话说是你用你的mac申请的Certificates证书)
3 p12和mobileprovision不是distribution的——确认你的Certificates证书是distribution的,确认你建立的Provisioning Profiles是distribution的
这下O了,步骤是:
1、 首先在你的苹果开发者账户上建立一个发布Certificates证书,下载下来,双击安装到串钥匙访问,然后右键导出成p12(这两步骤不懂的加我群吧);
2 、接着新建一个正式profile(测试版就是ad hoc——能加入测试的iPhone,这样不发布到app store非越狱的设备也可以测试了),profile的证书选择你刚才建立的证书(不知道哪里选择,看上面的图或者加群问),接着下载这个mobileprovision;
3、appid是你建立Provisioning Profiles(.mobileprovision)文件时选择的
至此,p12 mobileprovision都有了,去打包吧,包成功
补充,确定开发证书是你申请的:
ad hoc版可以直接安装,前提是uuid添加到了mobileprofile;
并且要解压ipa,然后把解压的文件放到Payload目录之后压缩改扩展名为ipa;
越狱机器需不需要,不知道
我的QQ群:
PHPer&Webgame&移动开发,群号:95303036
转自:http://blog.csdn.net/leinchu/article/details/11067183