Skip to content

Developing iOS apps

Stefan Ålund edited this page Apr 6, 2015 · 20 revisions

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/:

Drag owr

##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)

Fixing paths

##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 +: Adding frameworks

Done. Now you should have everything in place, try building the project.

Step 3. Native or Hybrid?

Follow these guides for the next step:

Clone this wiki locally