Please have your activity extend XWalkActivity for shared mode
这个是我们用XWalk 在一些不兼容手机时经常遇到的问题.
try { Class clazz = Class.forName("org.xwalk.core.XWalkCoreWrapper"); if (clazz != null) { Constructor constructor = clazz.getDeclaredConstructor(new Class[]{Context.class,int.class}); constructor.setAccessible(true); Object obj = constructor.newInstance(context,-1); Method fe = clazz.getDeclaredMethod("findEmbeddedCore", new Class[]{}); fe.setAccessible(true); Boolean isEmbeddedMode = (Boolean)fe.invoke(obj); } } catch (Exception e) { e.printStackTrace(); }
上面反射可以得到是否会出现不兼容的情况,然后我们可以根据
isEmbeddedMode 这个布尔值去做一些事情比如不再初始化xwalkview使用webview.