File tree Expand file tree Collapse file tree 3 files changed +32
-10
lines changed
android/src/main/java/com/cloudwebrtc/webrtc Expand file tree Collapse file tree 3 files changed +32
-10
lines changed Original file line number Diff line number Diff line change @@ -498,16 +498,16 @@ public void onSignalingChange(PeerConnection.SignalingState signalingState) {
498498 sendEvent (params );
499499 }
500500
501- @ Override
502- public void onConnectionChange (PeerConnection .PeerConnectionState connectionState ) {
503- Log .d (TAG , "onConnectionChange" + connectionState .name ());
504- ConstraintsMap params = new ConstraintsMap ();
505- params .putString ("event" , "peerConnectionState" );
506- params .putString ("state" , connectionStateString (connectionState ));
507- sendEvent (params );
508- }
501+ @ Override
502+ public void onConnectionChange (PeerConnection .PeerConnectionState connectionState ) {
503+ Log .d (TAG , "onConnectionChange" + connectionState .name ());
504+ ConstraintsMap params = new ConstraintsMap ();
505+ params .putString ("event" , "peerConnectionState" );
506+ params .putString ("state" , connectionStateString (connectionState ));
507+ sendEvent (params );
508+ }
509509
510- @ Nullable
510+ @ Nullable
511511 private String iceConnectionStateString (PeerConnection .IceConnectionState iceConnectionState ) {
512512 switch (iceConnectionState ) {
513513 case NEW :
Original file line number Diff line number Diff line change @@ -253,6 +253,17 @@ - (NSString *)stringForSignalingState:(RTCSignalingState)state {
253253 return nil ;
254254}
255255
256+ - (NSString *)stringForPeerConnectionState : (RTCPeerConnectionState)state {
257+ switch (state) {
258+ case RTCPeerConnectionStateNew: return @" new" ;
259+ case RTCPeerConnectionStateConnecting: return @" connecting" ;
260+ case RTCPeerConnectionStateConnected: return @" connected" ;
261+ case RTCPeerConnectionStateDisconnected: return @" disconnected" ;
262+ case RTCPeerConnectionStateFailed: return @" failed" ;
263+ case RTCPeerConnectionStateClosed: return @" closed" ;
264+ }
265+ return nil ;
266+ }
256267
257268/* *
258269 * Parses the constraint keys and values of a specific JavaScript object into
@@ -493,7 +504,13 @@ - (void)peerConnection:(RTCPeerConnection*)peerConnection didOpenDataChannel:(RT
493504/* * Called any time the PeerConnectionState changes. */
494505- (void )peerConnection : (RTCPeerConnection *)peerConnection
495506didChangeConnectionState : (RTCPeerConnectionState)newState {
496-
507+ FlutterEventSink eventSink = peerConnection.eventSink ;
508+ if (eventSink){
509+ eventSink (@{
510+ @" event" : @" peerConnectionState" ,
511+ @" state" : [self stringForPeerConnectionState: newState]
512+ });
513+ }
497514}
498515
499516- (void )peerConnection : (RTCPeerConnection *)peerConnection
Original file line number Diff line number Diff line change @@ -70,6 +70,10 @@ class _MyAppState extends State<LoopBackSample> {
7070 print (state);
7171 }
7272
73+ void _onPeerConnectionState (RTCPeerConnectionState state) {
74+ print (state);
75+ }
76+
7377 void _onAddStream (MediaStream stream) {
7478 print ('New stream: ' + stream.id);
7579 //_remoteRenderer.srcObject = stream;
@@ -143,6 +147,7 @@ class _MyAppState extends State<LoopBackSample> {
143147 _peerConnection.onSignalingState = _onSignalingState;
144148 _peerConnection.onIceGatheringState = _onIceGatheringState;
145149 _peerConnection.onIceConnectionState = _onIceConnectionState;
150+ _peerConnection.onConnectionState = _onPeerConnectionState;
146151 _peerConnection.onAddStream = _onAddStream;
147152 _peerConnection.onRemoveStream = _onRemoveStream;
148153 _peerConnection.onIceCandidate = _onCandidate;
You can’t perform that action at this time.
0 commit comments