美文网首页
解决XCode8.1 用Ad Hoc打包出现的0xE800801

解决XCode8.1 用Ad Hoc打包出现的0xE800801

作者: yqmfly | 来源:发表于2016-11-17 15:05 被阅读0次

    升级了XCode 8.1,用Ad Hoc 证书打包,出现了0xE8008016。这个问题在XCode7上没出现,在XCode8上出现了。错误提示如下:

    The entitlements specified in your application’s Code Signing Entitlements file do not match those specified in your provisioning profile.(0xE8008016)

    改用了Archive方式打包,就没有出现这个问题了。具体操作是

    1、Product-》Archive,完成后弹出Organizer界面;

    2、在右边选择Export,选择Savefor Ad Hoc Deployment;

    3、选择Development Team,过一会选择Device Support;

    4、一直点击Next;

    5、选择完成后ipa文件存放的文件夹。

    虽然我解决了这个问题,但是还是在网上搜索到了这个问题的其他解决方法,列举出来分享给大家。

    第一种:用itunes打包

    1、先在项目的Target里的General进行设置,把Signing下的Automatically manage singing取消

    2、在Signing(Debug)和(Release)里的Provisioning Profile选中已经配置好的证书(Wildcard那种)

    3、直接Build项目(⌘b)

    4、Build完后在项目文件夹找到Products,看看xxx.app是否变成黑色。

    5、打开iTunes,把xxx.app拖入iTunes,会生成一个app,右键那个app的icon,用Finder打开,会看到xxx.ipa的文件,把此xxx.ipa拖入即可。

    第二种:检查TeamID

    找到变换前后两个账号的teamID,这个可以到ituneconnect里面,或者直接到project.pbxproj查找,出问题的此刻,已经存在两个不同的teamID。查找到切换的ID,把project.pbxproj工程文件中的签名ID全部手动替换成目标ID。DEVELOPMENT_TEAM = XXXX ; XXXX填写新的teamID根据Target数量的不同,可能有好几处,全部替换成统一一个样即可。此问题在Xcode8beta版中已经存在,若有多个包名和账号切换的工程,可作为参考。

    第三种:检查Capabilities

    检查AppID所设置的功能,一般默认开启了GameCenter,那么就要在Capabilities把GameCenter打开。如果开启了推送,那么就要在Capabilities把Push Notification打开。诸如此类都要打开。

    相关文章

      网友评论

          本文标题:解决XCode8.1 用Ad Hoc打包出现的0xE800801

          本文链接:https://www.haomeiwen.com/subject/bubdpttx.html