mehrvarz / webcall-android

WebCall for Android - Web-Telephony P2P Messaging File-Exchange E2E-Encryption No-SIM
GNU General Public License v3.0
127 stars 14 forks source link

3rd party System WebView and WebRTC #3

Closed mehrvarz closed 2 years ago

mehrvarz commented 2 years ago

Some 3rd party System WebViews do not support WebRTC. If your system has one of these installed, you may see the following error message when running WebCall:

Your browser does not generate WebRTC connection state change events

In this case, please run WebRTC-Check from timur.mobi (also available on F-Droid soon) and report the version and package name of your installed System WebView and what type of ROM you are using.

Note: This is about 3rd party System WebViews only. This particular issue does not occur with stock (Google) System Webview.

mehrvarz commented 2 years ago

In this post I will try to provide solutions. This post will likely be edited multiple times.

As mentioned before, WebRTC connectivity issues DO NOT exist with the stock Android System WebView (by Google). Wrt 3rd party System WebViews, there seem to be 3 different cases:

  1. 3rd party WebView is working fine. This appears to be the case with the following ROM's: stock AOSP, LineageOS, crDroid (and I guess many others).
  2. 3rd party WebView is buggy, but can be replaced by user.
  3. 3rd party WebView is buggy and can NOT be replaced by user (due to signature protection). It may be the case that CalyxOS and/or Omnirom belong in this group. Note that this is 2nd hand info. This was only reported to me.

The solution to case 2 is, to replace the installed webview.apk with another (working) System WebView. Either with the stock Android System WebView, or with another (better) 3rd party System WebView.

The only solution for case 3 is to contact the ROM provider.

If possible, please report the relevant info about your Android variant.

mehrvarz commented 2 years ago

If your Android device comes with a problematic 3rd party System WebView, you can try to install a stock Android System WebView via Google Play, via chromium.googlesource.com or via apkmirror.com.

On some Android devices you can install several WebViews and switch between them under Settings / Developer options:

Screenshot_WebView