前段时间我创建了一个iPhone OS 2.2应用程序,最近安装了3.1 SDK。
当我尝试在我的(3.1)iPod Touch上运行我的应用时,启动窗口显示“调试器出错:启动远程程序时出错:安全策略错误。”
查看iPod Touch的控制台(通过Xcode管理器中我的设备的控制台选项卡)显示:
Wed Feb 3 23:29:17 unknown SpringBoard[24] <Warning>: Unable to launch com.blahblah.Blah_Blah because it has an invalid code signature, inadequate entitlements or its profile has not been explicitly trusted by the user.
Wed Feb 3 23:29:17 unknown com.apple.debugserver-43[789] <Error>: error: unable to launch the application with CFBundleIdentifier 'com.blahblah.Blah_Blah' sbs_error = 9
我已经筛选了一堆代码签名问题,只是为了让它构建和部署,所以我认为这可能是其他的。
答案 0 :(得分:40)
在尝试上述删除过期证书的解决方案后,我仍遇到此问题。原来我需要手动启动应用程序并接受提示,询问我是否真的想要使用该开发帐户启动该配置文件签名的应用程序。在接受之后,Xcode能够在随后的时间内成功启动它。
答案 1 :(得分:21)
我的解决方案是删除设备上所有过期的配置文件(甚至是不相关的配置文件)窗口 - &gt;管理器 - 选择您的设备并在配置文件下删除任何已过期的设备。谢谢: "security policy error" on iPhone and iPod Touch
答案 2 :(得分:1)
问题原来是可执行文件名中的空格(我认为)。
我之前通过将“:rfc1034identifier”附加到我的info.plist中的PRODUCT_NAME来解决了包标识符的类似问题,但这有点不同。
我不确定如何直接设置可执行文件名,但我最终只是将Target的“Build”选项卡上的“Packaging”部分中的Product Name更改为没有任何空格的内容。固定!
答案 3 :(得分:1)
在XCode中添加设备后尝试在我的“最新”iPad上运行时遇到了同样的问题。显然,这个设备不在我正在使用的开发配置文件的设备列表中。
解决方案:转到iOS配置门户,在左侧选择“配置”,选择顶部的“开发”选项卡,然后在编辑/修改
列表中更改适用的配置文件然后,您可以编辑要使用的证书的设置并添加各个设备。
然后,一旦您将设备与XCode管理器连接,设备上的信息将自动同步。您可能还想删除管理器中过时的配置文件。
问题解决了。
答案 4 :(得分:0)
我自己解决了这个问题。
转到管理器窗口 从左侧选择“配置配置文件” 按下窗口右下角的刷新按钮 打入你的AppleID和密码 随意重新编译您的应用程序
我的问题是我更新了我的个人资料以添加新设备,但没有在XCode中更新个人资料。