cordova-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tom Brückner (JIRA) <j...@apache.org>
Subject [jira] [Closed] (CB-13128) WebRTC in Cordova app: WebContentsDelegate::CheckMediaAccessPermission: Not supported
Date Wed, 02 Aug 2017 18:06:00 GMT

     [ https://issues.apache.org/jira/browse/CB-13128?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Tom Brückner closed CB-13128.
-----------------------------
    Resolution: Invalid

I found the root cause for my problems. Since Android Marshmallow, setting permissions in
the manifest is not working anymore, if the app is bound to Android SDK 23+. You have to request
the permissions at runtime. I am now using this plugin:

https://github.com/NeoLSN/cordova-plugin-android-permissions

and WebRTC works just fine. Still getting some of the error messages, but at least my app
is working again. So I am closing this.

> WebRTC in Cordova app: WebContentsDelegate::CheckMediaAccessPermission: Not supported
> -------------------------------------------------------------------------------------
>
>                 Key: CB-13128
>                 URL: https://issues.apache.org/jira/browse/CB-13128
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: cordova-android
>    Affects Versions: 6.3.1
>            Reporter: Tom Brückner
>
> I was using WebRTC in Cordova app with Cordova 5.2.0 and Cordova Android 4.1 without
problems. Since I upgraded to Cordova 6.3.1 and Cordova Android 6.1.1, I get the following
error message on the console on my Nexus 7 2013:
>     chromium: [ERROR:web_contents_delegate.cc(199)] WebContentsDelegate::CheckMediaAccessPermission:
Not supported.
> The permissions in the Android manifest include the following:
>     <uses-permission android:name="android.permission.INTERNET" />
>     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
>     <uses-permission android:name="android.permission.WAKE_LOCK" />
>     <uses-permission android:name="android.permission.VIBRATE" />
>     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
>     <uses-permission android:name="android.permission.CAMERA" />
>     <uses-permission android:name="android.permission.RECORD_AUDIO" />
>     <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
>     <uses-feature android:name="android.hardware.camera" android:required="true" />
>     <uses-feature android:name="android.hardware.camera.autofocus" android:required="true"
/>
> so I would say everything should be just fine. But still I am getting this error. I also
noticed that once I actually try to start streaming my local video, I also get these error
messages:
>     [ERROR:voe_audio_processing_impl.cc(685)] SetTypingDetectionStatus: not supported
>     [WARNING:webrtcvoiceengine.cc(882)] SetTypingDetectionStatus(0) failed, err=8003
>     [ERROR:audio_manager_android.cc(264)] Unable to select audio device!
>     [ERROR:web_contents_delegate.cc(199)] WebContentsDelegate::CheckMediaAccessPermission:
Not supported.
> and the local video has a size of 2x2. The remote video from the peer, however, works
just fine. Only the local video is affected.
> I am also getting this info:
>     [INFO:CONSOLE(0)] "Refused to load the image 'android-webview-video-poster:default_video_poster/8430923907866893907'
because it violates the following Content Security Policy directive: "default-src * gap: data:
blob: 'unsafe-inline' 'unsafe-eval' ws: wss:". Note that 'img-src' was not explicitly set,
so 'default-src' is used as a fallback.
> Not sure if this CSP issue is related to the problem, though. I was trying to fix this,
but Meteor (which I am using as a wrapper) won't let me do so.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@cordova.apache.org
For additional commands, e-mail: issues-help@cordova.apache.org


Mime
View raw message