0

I'm working on the flutter-webrtc plugin for iOS. Previously, the plugin use the prebuilt cocoapods dependency. But, in the WebRTC M80 Release Notes they state they are going to be deprecating the mobile libraries.

To stay up to date with the latest iOS native WebRTC bugfixes and features, we now need to build from source.

I've built from source and I was testing it with WebRTC's AppRTCMobile example app and it is working over there. Now I am trying to import the WebRTC.framework into the flutter plugin and I'm having trouble.

There is no flutter documentation on this, but I followed guidance from this github issue. I've copied the binary built from source into the plugin ios directory and modified the flutter_webrtc.podspec to include the framework, but I'm getting the error:

Xcode's output:
↳
    In file included from /Users/corey/Workspace/flutter/flutter-webrtc/ios/Classes/FlutterWebRTCPlugin.m:1:
    /Users/corey/Workspace/flutter/flutter-webrtc/ios/Classes/FlutterWebRTCPlugin.h:4:9: fatal error: 'WebRTC/RTCDataChannel.h' file not found
    #import <WebRTC/RTCDataChannel.h>
            ^~~~~~~~~~~~~~~~~~~~~~~~~
    1 error generated.
    In file included from /Users/corey/Workspace/flutter/flutter-webrtc/ios/Classes/FlutterRTCVideoRenderer.m:1:
    In file included from /Users/corey/Workspace/flutter/flutter-webrtc/ios/Classes/FlutterRTCVideoRenderer.h:1:
    /Users/corey/Workspace/flutter/flutter-webrtc/ios/Classes/FlutterWebRTCPlugin.h:4:9: fatal error: 'WebRTC/RTCDataChannel.h' file not found
    #import <WebRTC/RTCDataChannel.h>
            ^~~~~~~~~~~~~~~~~~~~~~~~~
    1 error generated.
    note: Using new build system
    note: Planning build
    note: Constructing build description

I'm really new to flutter plugin development so I'm not sure if I'm doing this correctly. Any tips would be very appreciated!

Corey Cole
  • 2,262
  • 1
  • 26
  • 43

1 Answers1

0

After adding the binary to the plugin ios directory, I needed to manually go into my app's ios directory (the app depending on the plugin) and manually run pod install && pod update.

After that, the plugin import errors were fixed and I'm now using WebRTC built from source in the flutter-webrtc plugin :)

Corey Cole
  • 2,262
  • 1
  • 26
  • 43