xcode 可执行文件的签名无效
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/5755790/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
The executable was signed with invalid entitlements
提问by Andrew
So here we are yet again. I already have an app on the app store, that took me 2 days to get past all the errors and just get the thing on there.
所以我们又来了。我已经在应用程序商店中安装了一个应用程序,我花了 2 天的时间才解决了所有错误,然后就可以把东西放在那里了。
Right now, I'm trying to put the 1.1 update on my brother's iPod Touch for testing. I pressed 'Use for development'. That's fine, works. Then i build and go, and it says 'The iPod “Dans Ipod touch” doesn't have the provisioning profile with which the application was signed.' so i press Install And Run to install the provisioning profile, and then get 'The executable was signed with invalid entitlements'.
现在,我正在尝试将 1.1 更新放在我兄弟的 iPod Touch 上进行测试。我按下了“用于开发”。很好,有效。然后我构建并运行,它说“iPod“Dans Ipod touch”没有用于签署应用程序的配置文件。所以我按安装并运行来安装配置文件,然后得到“可执行文件的签名无效”。
I'll be clear - all i want to do right now is to test the app on an iPod Touch, which is plugged into the computer. How do I get past this error and do that? I have what i thought was a valid provisioning profile selected in active target and active executable, but apparently that isn't enough. Any ideas?
我很清楚 - 我现在要做的就是在插入计算机的 iPod Touch 上测试该应用程序。我如何克服这个错误并做到这一点?我认为在活动目标和活动可执行文件中选择了一个有效的配置文件,但显然这还不够。有任何想法吗?
采纳答案by Graham Perks
Couple of easy things to try:
尝试一些简单的事情:
Do a Clean before building again.
Go to Xcode's Organizer and click on all the Profiles, checking they are valid. Xcode'll throw up warning text if say, something is missing in Keychain.
在重新构建之前做一次清洁。
转到 Xcode 的管理器并单击所有配置文件,检查它们是否有效。如果说钥匙串中缺少某些东西,Xcode 会抛出警告文本。
回答by Hetal Vora
Make sure your profile contains your iPod device UDID. Make sure that the certificate with which the profile is signed is installed in your keychain. Also make sure the bundle id in your profile and app info.plist match.
确保您的配置文件包含您的 iPod 设备 UDID。确保用于签署配置文件的证书已安装在您的钥匙串中。还要确保您的个人资料和应用程序 info.plist 中的包 ID 匹配。
回答by arcady bob
Outdated provisioning profiles can often be a problem. Click on your Project and your Target and then individually check the provisioning profile for each code signing identity (Ad Hoc, Debug, Release etc.) by actually clicking on it. Note that it might look like the right profile, but when you click on it, it appears at the bottom of the list in 'others'. This usually means XCode is referring to an older profile. Make sure you now select the current, up-to-date profile from the list above. It is best to check ever Code Signing Identity individually just to make sure.
过时的配置文件通常是一个问题。单击您的项目和目标,然后通过实际单击单独检查每个代码签名身份(Ad Hoc、调试、发布等)的配置文件。请注意,它可能看起来像正确的配置文件,但是当您单击它时,它会出现在“其他”列表的底部。这通常意味着 XCode 指的是较旧的配置文件。确保您现在从上面的列表中选择当前的、最新的配置文件。最好单独检查代码签名身份以确保。
Once done, I recommend cleaning the project and deleting the app from your device before running it again.
完成后,我建议在再次运行之前清理项目并从您的设备中删除该应用程序。
Also, check your profile in Organiser and make sure it has a Green Tick (Valid Profile) and in the Provisioning Portal to ensure the required device is included in the profile.
此外,在 Organizer 中检查您的配置文件并确保它有一个绿色勾号(有效配置文件)和在配置门户中以确保所需的设备包含在配置文件中。
回答by smj2393
Go to Window -> Organizer -> Devices and then go to the connected device's Provisioning Profiles tab.
转至窗口 -> 管理器 -> 设备,然后转至已连接设备的配置文件选项卡。
Note the name of the currently valid profile (must have a green tick icon).
请注意当前有效配置文件的名称(必须带有绿色勾号图标)。
Click the project then go to Project -> Build Settings -> Code Signing Then copy the appropriate profile name into the Code Signing Identity field.
单击项目然后转到 Project -> Build Settings -> Code Signing 然后将适当的配置文件名称复制到 Code Signing Identity 字段中。
Clean the project
清理项目
Then run the program on the device
然后在设备上运行程序
回答by Yotes
In one case, to solve this issue, I also had to add the provisioning profile on the iphone's provisioning profiles, available only on this phone, from Organizer>Devices. It is strange, because this device is the only one that require that action. (Anyway I'm Newbie)
在一种情况下,为了解决这个问题,我还必须在 iPhone 的配置文件中添加配置文件,该配置文件仅在此手机上可用,从管理器>设备。这很奇怪,因为这个设备是唯一需要该操作的设备。(反正我是新手)