When running my app with XWalk (version 23.53.589.4) dependency, I am experiencing an exception once I call a XWalk API. Here is what the log looks like.
java.lang.RuntimeException: Crosswalk's APIs are not ready yet
at org.xwalk.core.XWalkView.load(XWalkView.java:372)
at com.ewise.android.api.MainActivity.onXWalkInitCompleted(MainActivity.java:869)
at org.xwalk.core.XWalkInitializer$XWalkLibraryListener.onActivateCompleted(XWalkInitializer.java:264)
at org.xwalk.core.XWalkLibraryLoader$ActivateTask.onPostExecute(XWalkLibraryLoader.java:349)
at org.xwalk.core.XWalkLibraryLoader$ActivateTask.onPostExecute(XWalkLibraryLoader.java:317)
at android.os.AsyncTask.finish(AsyncTask.java:695)
at android.os.AsyncTask.-wrap1(Unknown Source:0)
at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:712)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6541)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
This only happens in Android API 26. I've tried it on API 27 and it seems to work just fine. Do take note that I have already initialized XWalk via the XWalkInitializer beforehand.
EDIT: Upon further investigation, it seems that the XWalkInitializer fails during this phase.
XWalkLibraryLoader.startActivate(this);
Adding this in the Activity maybe useful.