PhoneGap handleOpenUrl和Android

Tom*_*i S 2 android cordova

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    super.loadUrl("file:///android_asset/www/index.html");

    final String invokeString = getIntent().getDataString();
    if(invokeString != "" && invokeString != null) {
        this.sendJavascript("handleOpenURL('" + invokeString + "');");
        System.out.println(invokeString);
    }
}
Run Code Online (Sandbox Code Playgroud)

我在这个网站上找到了这个代码:http://blog.cttapp.com/p/phonegap-handleopenurl-for-android/.

它不会执行handleOpenURL,我知道这一点,因为它会重定向页面.

Leo*_*Leo 6

我有同样的问题.似乎webview还没有准备好.

这是我如何工作:覆盖onMessage函数,因为它似乎准备好听你说:

@Override
public Object onMessage(String id, Object obj) {

    if (id.equals("onPageStarted")) {

        final Intent intent = getIntent();
        if(intent.getDataString()!= "" && intent.getDataString()!= null){
            String url = intent.getDataString();
            this.sendJavascript("handleOpenURL('" + url + "');");
        }

    }
    return super.onMessage(id, obj);
}
Run Code Online (Sandbox Code Playgroud)

我在这里找到了解决方案.