-
Notifications
You must be signed in to change notification settings - Fork 209
Developing iOS apps
This page shows how to get started developing iOS apps using OpenWebRTC. There are basically 2 different kinds of apps:
- Native - Low-level apps that use the OpenWebRTC C API.
- Hybrid - Apps that use a combination of native code (Objective-C or Swift) and HTML/JavaScript running in web views.
If you are developing a pure web app for Bowser, or have an existing WebRTC web app that you want to run in Bowser, please go to the Developing for Bowser page.
The remainder of this page will focus on native and hybrid app development.
#Alternative 1. CocoaPods The simplest, and recommended, way to install OpenWebRTC is through the OpenWebRTC SDK using CocoaPods.
#Alternative 2. Manual installation
##2.1 Getting the framework
OpenWebRTC can be manually added to your project using OpenWebRTC.framework
. Depending on your preference there are two ways to get the framework:
- Download an official release (coming soon)
- Build OpenWebRTC yourself. This is needed if you want to modify OpenWebRTC.
##2.2 Adding OpenWebRTC
Drag and drop OpenWebRTC.framework
from where it is located on disk. If you have built OpenWebRTC yourself it can be found in ~/Library/Developer/OpenWebRTC/iPhone.sdk/
:
##2.3 Fixing paths ###Change "Header Search Paths": You need to manually point out the paths for the Headers in the framework. This is done in your project Build Settings, e.g.:
-
~/Library/Developer/OpenWebRTC/iPhone.sdk/OpenWebRTC.framework/Headers
(recursive)
##2.4 Adding dependencies The following Frameworks needs to be added to your project:
- CoreMedia.framework
- CoreAudio.framework
- CoreVideo.framework
- AssetsLibrary.framework
- AudioToolbox.framework
- VideoToolbox.framework
- AVFoundation.framework
- JavaScriptCore.framework
- OpenGLES.framework
Apart from the Frameworks you need to also add the following dynamic libs:
libresolv.dylib
libc++.dylib
This is easiest done by going to Build Phases and clicking the +:
Done. Now you should have everything in place, try building the project.
Follow these guides for the next step: