Catch"页面已完成加载"事件并使用xwalk webview在ionic / cordova MainActivity.java中执行某些操作

时间:2016-03-17 11:37:16

标签: android cordova ionic-framework crosswalk xwalkview

我有一个使用ionic构建的Android应用程序,我在其中使用了 xwalk web-view 。我需要在我的MainActivity.java中捕获页面已完成加载事件,该事件扩展了CordovaActivity类,然后执行一些操作。我怎么能这样做。

3 个答案:

答案 0 :(得分:4)

如果您在Crosswalk Embedded Mode中使用xwalkview,其API XWalkResourceClient#onLoadFinished可能对您有用。细节在这里API_docs,您可以像这样使用:

class ResourceClient extends XWalkResourceClient {

    public ResourceClient(XWalkView xwalkView) {
        super(xwalkView);
    }

    public void onLoadStarted(XWalkView view, String url) {
        super.onLoadStarted(view, url);
        Log.d(TAG, "Load Started:" + url);
    }

    public void onLoadFinished(XWalkView view, String url) {
        super.onLoadFinished(view, url);
        Log.d(TAG, "Load Finished:" + url);
    }

    public void onProgressChanged(XWalkView view, int progressInPercent) {
        super.onProgressChanged(view, progressInPercent);
        Log.d(TAG, "Loading Progress:" + progressInPercent);
    }
}

mXWalkView.setResourceClient(new ResourceClient(mXWalkView));
mXWalkView.load("http://www.google.com/", null);

答案 1 :(得分:0)

如果您使用的是Android WebView,请查看onPageFinished()方法。

http://developer.android.com/reference/android/webkit/WebViewClient.html#onPageFinished(android.webkit.WebView,java.lang.String)

答案 2 :(得分:0)

与Android Webview十分相似的流程事件请尝试

xWalkView.setResourceClient(new XWalkResourceClient(xWalkView) {
     @Override
      public void onLoadFinished(XWalkView view, String url) {
           super.onLoadFinished(view, url);
           // Stop your loading dialog here
      }
 });

保重