0

你好我是android开发的新手,

我想在我的 android webview 中设置我的 javscript 打开。我尝试了一切,但它不起作用。我下面的代码是我的 webview 类。我希望有一个人可以帮助我。

package visuals.Webview;

import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Bundle;
import android.view.KeyEvent;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class VisualsActivity extends Activity {
/** Called when the activity is first created. */

final Activity activity = this;
WebView webview;

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

    webview = (WebView) findViewById(R.id.webview);
   // webview.setWebViewClient(new myWebClient());

    webview.loadUrl("http://192.168.0.62/lastversion/index.php");
    webview.getSettings().setJavaScriptEnabled(true);
    webview.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
    webview.getSettings().setUserAgentString(getString(R.string.user_agent_suffix));   
}

public class myWebClient extends WebViewClient
{
    @Override
    public void onPageStarted(WebView view, String url, Bitmap favicon) {
        // TODO Auto-generated method stub
        super.onPageStarted(view, url, favicon);
    }

    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
        if (url.startsWith("tel:")) { 
            startActivity(new Intent(Intent.ACTION_DIAL, Uri.parse(url))); 
            return true; 
        } else if (url.startsWith("mailto:")) { 
            url = url.replaceFirst("mailto:", ""); 
            url = url.trim(); 
            Intent i = new Intent(Intent.ACTION_SEND); 
            i.setType("plain/text").putExtra(Intent.EXTRA_EMAIL, new String[]{url}); 
            startActivity(i); 
            return true; 
        } else { 
            view.loadUrl(url); 
            return true; 
        } 
    } 
}

// To handle "Back" key press event for WebView to go back to previous screen.
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) 
{
    if ((keyCode == KeyEvent.KEYCODE_BACK) && webview.canGoBack()) {
        webview.goBack();
        return true;
    }
    return super.onKeyDown(keyCode, event);
}
 }

感谢您的帮助

4

3 回答 3

4
WebView webView;
webView.getSettings().setJavaScriptEnabled(true);

相当容易 :)

于 2012-05-30T08:29:20.163 回答
1
webview.getSettings().setPluginState(PluginState.ON);

或使用旧版本时(< API 8)

webView.getSettings().setJavaScriptEnabled(true);
于 2012-05-30T08:53:52.570 回答
0
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);

如果您希望您的 webview 的 javascript 能够与您的 android 应用程序交互。看看 webview 的 addJavascriptInterface 方法文档。

于 2012-11-25T18:06:28.463 回答