我想我的脑袋很快会爆炸。
我已经在我的应用程序上工作了一段时间,最后git一个iPhone在设备上进行测试,现在我正在尝试在iphone上运行我的应用程序,但不能这样做。我已经完成了所有必要的步骤但却出错了
[BEROR]Code Sign error: a valid provisioning profile matching the application's Identifier 'com.yourcompany.MyProject' could not be found
我的配置文件名称为XXXXXXXXX.com.myname.*
我将Bundle标识符更改为com.myname.myapplication
我的项目名称是MyProject,因为我无法更改它,但我的目标和可执行文件名为myapplication
我已检查过所有设置,甚至无法在任何地方找到此yourcompany
但仍然收到此错误
我在哪里寻求?
谢谢
答案 0 :(得分:23)
Xcode使用目标Info.plist文件中的bundle标识符进行代码签名。
选择哪个Info.plist文件实际上是一个构建设置(通常在目标中),并且通常由Xcode正确设置。如果您手动将Info.plist的包标识符值编辑为标识符,Xcode应使用此标识符并且代码签名应该有效。
默认的Info.plist文件包含一个包含Xcode构建设置的包标识符,并在构建目标时被处理为最终标识符。
答案 1 :(得分:12)
Nikolai Ruhe的回答说:“如果您手动将Info.plist的包标识符值编辑为您的标识符,Xcode应该使用此标识符并且代码签名应该有效。”这是真的。但是,这些天(我不确定它是在2010年9月),xcode使用默认的包标识符,它是变量$ {PRODUCT_NAME}的函数。这个相同的变量在其他各个地方使用,例如,包名称,包显示名称等。因此,我建议改为更换$ {PRODUCT_NAME},然后此更改将传播到Info.plist的包标识符等。
如何更改$ {PRODUCT_NAME}?选择适当的目标,转到“构建设置”,展开“打包”部分,然后编辑“产品名称”的值。
答案 2 :(得分:1)
选择目标,转到摘要。将包标识符从com.yourcompany.MyProject更改为com.myname.myapplication。它应该工作!我一直在使用它,每次都很棒。您也可以从info.plist文件中执行相同的操作。