Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 如何使用ios objective c构建webrtc_Objective C_Webrtc - Fatal编程技术网

Objective c 如何使用ios objective c构建webrtc

Objective c 如何使用ios objective c构建webrtc,objective-c,webrtc,Objective C,Webrtc,我试图从google webrtc源代码构建AppDemom示例,我遵循自述文件,但在尝试此“gclient runhooks”后,我得到: 需要显式设置key_id gyp变量,因为存在多个代码签名密钥,或者没有 有人能说出发生了什么吗?这里少了什么 tks问题在于您是否有多个iOS开发者密钥。在libjingle_examples.gyp文件的第271行中,在违规行上方有此注释 # Total HACK to give a more informative message when mul

我试图从google webrtc源代码构建AppDemom示例,我遵循自述文件,但在尝试此“gclient runhooks”后,我得到:

需要显式设置key_id gyp变量,因为存在多个代码签名密钥,或者没有

有人能说出发生了什么吗?这里少了什么


tks

问题在于您是否有多个iOS开发者密钥。在libjingle_examples.gyp文件的第271行中,在违规行上方有此注释

 # Total HACK to give a more informative message when multiple
 # codesigning keys are present in the default keychain.  Ideally
 # we could pick more intelligently among the keys, but as a
 # first cut just tell the developer to specify a key identity
 # explicitly.

'key_id%': (security find-identity -p codesigning -v | grep "iPhone Developer" | awk \'{print $2}\')
直接运行命令时:

security find-identity -p codesigning -v | grep "iPhone Developer" | awk '{print $2}'
555XXXX6DA325E6097E5301381XXXXXXD35D620E
315XXXX6B19AD10A0F4567XXXX03B1BXXXXXXXXX
它列出了两个开发ID,这就是问题所在,因此我编辑了libjingle|u examples.gyp第271行,并添加了
|head-1
,使其仅返回1个键,在本例中是顶部键或第一个键。我还仔细检查了Xcode,以确保最上面的键是我当前的键

过去几个月我一直在这个领域工作,而iOS上的webrtc并不容易。为了解决这个问题,我添加了一个github repo,其中有一个使用webrtc的iOS应用程序的工作示例


该网站还引用了谷歌代码网站,因此它应该是一个有用的起点。

Gp coder的解决方案对我来说只是修复的一半。在做了他建议的更改后,我在另一个文件中遇到了另一个类似的错误:

AssertionError:identity:iPhone的多个代码签名标识 显影剂

此断言发生在以下文件中:

webrtc/trunk/tools/gyp/pylib/gyp/xcode_仿真.py

奇怪的是,断言后的一行将使用列表中的第一个代码签名标识,因此解决方案就像在第793行注释掉断言一样简单。假设您实际需要第一个代码签名标识。如果不是,请将第796行的结果数组上使用的索引更改为所需的任何索引


最后,我做了这些更改,以及一些您需要的其他更改,以使完整构建正常工作。

在文件trunk/tools/gyp/pylib/gyp/xcode_emulation.py中,在第832-833行注释以下行:#断言标识不在缓存中或指纹==缓存[identity],(#“标识的多个代码签名指纹:%s”%identity)会解决你的问题的,jzn。参考自