您的位置:首页 > 移动开发

如何运行从网上下载的iWatch项目详细步骤.Error: An App ID with identifier "*****" is not avaliable.

2016-03-07 16:05 916 查看
转载自:/article/9715322.html

今天帮朋友解决iWatch的问题,他把项目直接扔给我,我们都知道如果项目中带一些需要开发认证的框架(比如Healthkit框架内)是不能直接运行的.昨天经过一个多小时的研究(PS:楼主比较笨),终于搞定这个问题.现在把自己爬坑的经过写下来,希望能帮助到大家.

朋友的项目就不便放出来啦,特意从github上找了个大牛写的Demo: https://github.com/shu223/watchOS-2-Sampler
大家是不是和我一样,项目一下载下来,就会迫不及待满怀期待的运行一下.结果...

错误1: Fail to code sign "***" No valid signing identities (i.e. certificate and private key pair) matching the team ID "****" were found.



然后我们就想都不想来fix issue.本人还是蛮信任苹果的,一些问题我们fix 下就会解决.然后我们就会满怀期待的再fix下.然后..



然后我们在fix...

错误2: Unable to find a team with the given Team ID '****' to which you belong. Please contact Apple Developer Prpgram Support.



现在问题出来了,是我们的开发者账号不匹配,所以我们要去项目中去配置一下.



选中我们的开发者账号在运行,又报错了..



现在的问题是找不到和"9Z86...."team ID匹配的正式.我们在fix下..



又报错了,而且只能点Done了,而且问题也没办法解决,别人的开发者账号,我们联系苹果也没有用,是不是很崩溃..其实只是我们应用中使用了Healthkit框架,而该框架是需要开发者账号认证的.



点一下fix issue..又报错了..

错误3: An App ID with identifier "*****" is not avaliable. Please enter a different string.



再fix..还是和上面报的错一样.然后你就会发现其实这并没什么卵用. 错误的原因就是这个identifer已经被别人占用了,你不可以再使了(如果男票和女票也可用这样就好了,被我占用了其他人就想都别想了,当然前提是你得有

).既然这个被占用了那我们就换个呗,天涯何处无芳草..



现在我们在bundle ID 后面加了个标志,回到capabilities再fix一下.好了




我们再满怀憧憬的运行下...

错误4: No code signing identities found: No valid signing identitis (i.e certificate and private key pair) matching the team ID "***" were found. CodeSign error: code signing
is required for product type 'WatchKit App' in SDK 'Watch OS 2.0'



又报错了..错误原因顾名思义,我们值改了extension.watch app也要改



再运行哈..又报错..

错误5: error: Enbedded binary's identifier is not prefixed with the parent app's bundle identifier.



错误的原因就是我们嵌入的bundle ID 和父APP的前缀不一样.苹果之所以能关联手机和watch的APP是有条件的.其bundle ID 必须遵循固定的格式. 也就是两者的前缀必须一样.好吧,现在我们再改一下父APP的bundle ID .



好啦.我们在运行下..又报错了,没完没了


错误6: error: WatchKit App doesn't contain any WatchKit Extensions whose WKAppBundleIdentifier matches "*****". Verify that the value if WKAppBundleIdentifier in your WatchKit
Extension's Info.plist matches the value of CFBundleIndetifier in your WatchKit App's Info.plist.



好吧,按照苹果的提示做就ok了..一定要APP和extension的配置保持一致.





再运行一次..

错误7: error: warning: Is a directory



这次想骂人了,报了个莫名其妙的错误...

其实每次看到这个错误我就会clear一下工程,然后真正的错误就会显出原形.本人比较喜欢改了工程配置啥的就喜欢clean下.虽然有时间没必要(但有时候是很有用的).而且自认为是个好习惯..

.现在让我们看看真正的错误是啥.

错误8: error: Embedded binary's bundle identifier is not prefixed with the parent app's bundle identifier.



提示显示,内嵌的bundle ID 和父APP的不匹配.因为我们该了watch APP和extension,却没有改主APP的bundle ID.下面我们修改一下主APP的bundle ID



在运行一下....然后你会惊奇的发现 ----------------- 终于能运行了.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: