Objective c &引用;可执行文件已使用无效权限签名”;添加代码签名权限时

Objective c &引用;可执行文件已使用无效权限签名”;添加代码签名权限时,objective-c,iphone,cocoa-touch,Objective C,Iphone,Cocoa Touch,我即将在appstore上发布我的第一个免费应用程序。按照开发人员门户上的说明,我添加了一个“authentications.plist”文件,并在“CodeSigning authentications”项目设置中引用了该文件。在我这样做之后,我无法再在我的Ipod上测试应用程序,错误消息是“可执行文件已使用无效权限签名”。如果我删除对授权文件的引用,一切正常 我已经这样做了: -重新下载我的资源调配配置文件并将其安装在organizer中 -尝试创建新的资源调配配置文件并安装了该配置文件 -

我即将在appstore上发布我的第一个免费应用程序。按照开发人员门户上的说明,我添加了一个“authentications.plist”文件,并在“CodeSigning authentications”项目设置中引用了该文件。在我这样做之后,我无法再在我的Ipod上测试应用程序,错误消息是“可执行文件已使用无效权限签名”。如果我删除对授权文件的引用,一切正常

我已经这样做了: -重新下载我的资源调配配置文件并将其安装在organizer中 -尝试创建新的资源调配配置文件并安装了该配置文件 -未选中plist文件中的“获取任务允许”。 -尝试“清除所有目标”


你们谁能解释一下这件事吗?在发布到appstore时,这是否至关重要?我已经准备好了分发配置文件,但我想我必须先解决这个问题。我感谢你对这件事的任何想法

如果您的公司(或主页)被调用,例如stackoverflow.com,那么最好使用您的应用程序标识符:com.stackoverflow.myAppName。证书中的通用应用程序标识符应为***com.stackoverflow.***。这必须在iPhone开发中心中定义。然后确保在Info.plist中编辑应用程序的捆绑标识以反映这些更改。完成此操作后,您可以在设备上进行测试,还可以为AppStore发布。

如果您的公司(或主页)被调用,例如stackoverflow.com,那么最好将您的应用程序标识符设置为:com.stackoverflow.myAppName。证书中的通用应用程序标识符应为***com.stackoverflow.***。这必须在iPhone开发中心中定义。然后确保在Info.plist中编辑应用程序的捆绑标识以反映这些更改。完成此操作后,您可以在设备上进行测试,还可以为AppStore发布。

听起来好像您不小心将项目设置为使用授权文件,而不仅仅是分发版本。在根据开发者证书(即iPod的开发者证书)进行编译时,不应使用授权文件。它只能用于分发

您所做的最有可能是编辑设置的全局版本(通过双击“组和文件”部分中的项目文件),而不是目标版本

下面是如何解决这个问题

  • 在xcode中打开您的项目
  • 在project下,将active sdk和active build配置设置为ipod使用的任何配置
  • 打开“组和文件”下的“目标”选项卡
  • 双击您试图构建的目标。目标图标看起来像是由工具制成的
  • 向下滚动至代码签名并删除代码签名权限

  • 听起来好像您不小心将项目设置为使用授权文件,而不仅仅是分发版本。在根据开发者证书(即iPod的开发者证书)进行编译时,不应使用授权文件。它只能用于分发

    您所做的最有可能是编辑设置的全局版本(通过双击“组和文件”部分中的项目文件),而不是目标版本

    下面是如何解决这个问题

  • 在xcode中打开您的项目
  • 在project下,将active sdk和active build配置设置为ipod使用的任何配置
  • 打开“组和文件”下的“目标”选项卡
  • 双击您试图构建的目标。目标图标看起来像是由工具制成的
  • 向下滚动至代码签名并删除代码签名权限

  • 我从来没有使用过“权利.plist”。使用它有什么好处?我已经重新阅读了说明,可能误解了。似乎只有临时分发才需要authentices.plist。其他人也能证实这一点吗?无论如何,在我得到迪米特里斯的评论之前,我做了更多的研究。我在ipod上出现这个问题的原因似乎是“应用程序ID和捆绑包标识符不匹配”。我没有触及info.plist中的包标识符。我想知道,这会不会让我在appstore上被拒绝?只需使用像“com.yourdomain.yourappname”这样的捆绑标识就可以了。而且您不需要向应用商店分发权限。只需确保您已经创建了AppStore分发证书并签署了该证书,而不是您的常规开发证书。谢谢,Dmitris!那么,我将不考虑这些权利:-)但是我很难弄清楚如何制作这个包。这些配置文件的AppID似乎是“ZQ75CFNP3G.*”。我不知道公司名称该写什么。那是我的苹果酒吗?或存储在我的苹果开发者个人资料中的公司/组织。我的包显示名称是“mittSnitt”。那也应该在那条线上吗?最后,我是否还必须在info.plist中填写可执行文件和捆绑包名称?对不起,所有的问号:-)如果你帮我解决这个问题,你将是我的英雄…我将把它作为一个答案发布,这样,如果你能做到这一点,你就可以结束这个问题。我从来没有使用过“权利.plist”。使用它有什么好处?我已经重新阅读了说明,可能误解了。似乎只有临时分发才需要authentices.plist。其他人也能证实这一点吗?无论如何,在我得到迪米特里斯的评论之前,我做了更多的研究。我在ipod上出现这个问题的原因似乎是“应用程序ID和捆绑包标识符不匹配”。我没有触及info.plist中的包标识符。我想知道,这会不会让我在appstore上被拒绝?只需使用像“com.yourdomain.yourappname”这样的捆绑标识就可以了。而且您不需要向应用商店分发权限。确保你