105 Stimmen

JavaScript funktioniert nicht in Android Webview?

Ich versuche, eine Android-Version einer relativ einfachen iOS-App zu erstellen, die eine Webansicht und einige Schaltflächen verwendet und dann auf Javascript-Aufrufe an ein CMS angewiesen ist.

Aber ich stehe noch an einem ziemlich frühen Punkt der Entwicklung: Die Webview funktioniert nicht mit javascript.I've eine Menge Beiträge darüber gelesen, wie JS in einem Android-Webview zu aktivieren, aber kein Glück so weit.

Nachstehend finden Sie einen Teil meines Codes:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    mWebView = (WebView) findViewById(R.id.webview);
    mWebView.getSettings().setJavaScriptEnabled(true);
    mWebView.setWebChromeClient(new WebChromeClient());
    mWebView.setWebViewClient(new HelloWebViewClient()
    {
        @Override  
        public void onPageFinished(WebView view, String url)  
        {  
            //Calling an init method that tells the website, we're ready 
            mWebView.loadUrl("javascript:m2Init()");
            page1(mWebView);
        }  
    });
  mWebView.loadUrl("http://my_url/mobile/iphone//app.php");  
}

private class HelloWebViewClient extends WebViewClient {
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        view.loadUrl(url);
        return true;
    }

}

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack()) {
        mWebView.goBack();
        return true;
    }
    return super.onKeyDown(keyCode, event);
}

public void page11(View view)
{
    mWebView.loadUrl("javascript:m2LoadPage(1)");
}

Was mache ich hier falsch? Die URL funktioniert in meiner iOS-App und in einem Browser einwandfrei. Aber nicht in meiner App!

Bitte sag mir, dass es etwas Offensichtliches ist...

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X