我们的团队正在选择一种编程语言来开发一个新的iOS应用程序,其中我们需要编写支持视频通话的功能。
后端采用WebRTC编写,现在我们需要决定在iPhone应用程序中使用哪种语言,我们倾向于在这种情况下使用Swift。
然而,我不确定Swift是否支持WebRTC。
我的初步调查表明,我们可以使用Objective-C实现这些功能。我找到了一个用Objective-C编写的示例,源代码可以在此处找到。
然而,我对Swift还不确定。Swift是否也支持WebRTC呢?
我们的团队正在选择一种编程语言来开发一个新的iOS应用程序,其中我们需要编写支持视频通话的功能。
后端采用WebRTC编写,现在我们需要决定在iPhone应用程序中使用哪种语言,我们倾向于在这种情况下使用Swift。
然而,我不确定Swift是否支持WebRTC。
我的初步调查表明,我们可以使用Objective-C实现这些功能。我找到了一个用Objective-C编写的示例,源代码可以在此处找到。
然而,我对Swift还不确定。Swift是否也支持WebRTC呢?
2023年更新 很不幸,截至2023年,似乎还没有完全实现WebRTC协议的Swift框架。虽然托管在webrtc.org上的iOS框架可以相对容易地用于Swift应用程序,但它主要是用Objective C编写的。
对于那些遇到这个问题的人,他们只想在自己的应用程序中运行webRTC,使用cocoapod仍然相对容易。
2016年更新
最简单的方法是按照https://cocoapods.org/pods/WebRTC上的说明安装CocoaPods来在您的项目中获取webRTC。
如果您以前从未使用过CocoaPods,则需要首先阅读此指南:https://guides.cocoapods.org/using/getting-started.html
原始答案
简单回答这个问题是,目前没有用Swift编写符合WebRTC协议的开源库。您仍然可以将官方WebRTC项目中的代码编译到您的应用程序中。这里可以找到可能无法成功构建的指示: https://webrtc.org/native-code/ios/ 最后,为了澄清Omkar Guhilot的答案:Skylink是一家拥有闭源SDK的公司,该SDK仅设计用于与他们的付费stun-turn服务配合使用,而https://github.com/alongubkin/phonertc需要cordova,这对许多本地iOS开发人员可能不理想。当前版本的webrtc框架不需要任何pods或额外的桥接头文件。
可以通过按照此链接上的说明生成框架: https://webrtc.github.io/webrtc-org/native-code/ios/
如果您正确地遵循它们,您将生成一个框架,将该框架添加到您的项目中,并遵循webrtc必要的步骤,您将拥有一个集成了WEBRTC的项目。
要了解所有必要的步骤,请按照appear.in上的此链接: https://tech.appear.in/2015/05/25/Getting-started-with-WebRTC-on-iOS/
这将使您能够在浏览器和任何iOS 8+设备之间进行通话。
是的,Swift支持WebRTC,并且还有一个库可以在Swift中使用,链接为:http://skylink.io/ios/
而你分享的链接是用Objective C编写的,我们也可以通过创建桥接头文件在Swift中使用它
也可以看看这个链接 https://github.com/alongubkin/phonertc
谢谢
Omkar