I cannot get a Cordova app using Crosswalk to run on Android 4.1. I have built my app with Crosswalk and had it working on 4.1 2 months ago, but it's not.
I put my app aside and did all the debugging with a blank Cordova project, with only 3 plugins. Using instructions from here.
- cordova-plugin-whitelist
- cordova-plugin-network-information
- cordova-plugin-crosswalk-webview
I have no build problems, but when I try and run the app on the phone it crashes right away. I am testing on the Android 4.1.2 emulator image. The following are the logcat ERROR's
11-17 03:25:26.645 1256-1256/com.cordova.blank E/Trace: error opening trace file: No such file or directory (2)
11-17 03:25:28.315 1256-1256/com.cordova.blank E/libEGL: validate_display:209 error 3008 (EGL_BAD_DISPLAY)
11-17 03:25:28.315 1256-1256/com.cordova.blank E/libEGL: validate_display:209 error 3008 (EGL_BAD_DISPLAY)
11-17 03:25:28.325 1256-1256/com.cordova.blank E/chromium: [ERROR:gl_surface_egl.cc(327)] No suitable EGL configs found.
11-17 03:25:28.325 1256-1256/com.cordova.blank E/chromium: [ERROR:gl_surface_android.cc(23)] GLSurfaceEGL::InitializeOneOff failed.
11-17 03:25:28.325 1256-1256/com.cordova.blank E/chromium: [ERROR:browser_main_loop.cc(698)] GLSurface::InitializeOneOff failed
11-17 03:25:28.404 1256-1288/com.cordova.blank E/dalvikvm: Could not find class 'android.bluetooth.BluetoothManager', referenced from method org.chromium.media.AudioManagerAndroid.hasBluetoothHeadset
11-17 03:25:28.455 1256-1256/com.cordova.blank E/chromium: [ERROR:xwalk_platform_notification_service.cc(103)] Not implemented reached in virtual bool xwalk::XWalkPlatformNotificationService::GetDisplayedPersistentNotifications(content::BrowserContext*, std::set<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >*)
11-17 03:25:28.515 1256-1256/com.cordova.blank E/chromium: [ERROR:xwalk_browser_context.cc(79)] Failed to read preference, error num: 0
11-17 03:25:28.585 1256-1293/com.cordova.blank E/chromium: [ERROR:unix_domain_server_socket_posix.cc(106)] Not implemented reached in virtual int net::UnixDomainServerSocket::GetLocalAddress(net::IPEndPoint*) const
11-17 03:25:28.616 1256-1256/com.cordova.blank E/dalvikvm: Could not find class 'org.xwalk.core.internal.extension.api.DisplayManagerJBMR1', referenced from method org.xwalk.core.internal.extension.api.XWalkDisplayManager.getInstance
11-17 03:25:28.725 1256-1256/com.cordova.blank E/dalvikvm: Could not find class 'org.chromium.content.browser.ScreenOrientationListener$ScreenOrientationDisplayListener', referenced from method org.chromium.content.browser.ScreenOrientationListener.<init>
11-17 03:25:29.125 1256-1298/com.cordova.blank A/libc: Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1), thread 1298 (Chrome_InProcGp)
I have tried with Crosswalk 14 & 15 latest stable releases. I have tried with both Cordova 5.3.3 and Cordova 5.0.0
I also have a Blackberry 10 emulator, the app on it doesn't crash right away, instead an error dialog is presented.
The minSdkVersion
is set to 16
.
The test app loads fine with no Crosswalk added.
I have also tried all of the above with Ionic.
The app works fine on Android 4.3 emulator and on my physical Android 5.1.1 device.