将网页嵌入到android应用中

将网页嵌入到android应用中

 

package com.android.webviewtest;
import android.app.Activity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;


public class MainActivity extends Activity {
	private WebView myWebView ;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		//获取webview控件
		myWebView = (WebView) findViewById(R.id.webview);
		//加载服务器上的页面
		myWebView.loadUrl("http://www.baidu.com");
		//加载本地中的html
		//myWebView.loadUrl("file:///android_asset/www/test2.html");
		//加上下面这段代码可以使网页中的链接不以浏览器的方式打开
		myWebView.setWebViewClient(new WebViewClient());
		//得到webview设置
		WebSettings webSettings = myWebView.getSettings();	
		//允许使用javascript
		webSettings.setJavaScriptEnabled(true);
		//将WebAppInterface于javascript绑定
		myWebView.addJavascriptInterface(new WebAppInterface(this), "Android");
		
	}
	
	
	@Override
	public boolean onKeyDown(int keyCode, KeyEvent event) {
	    // Check if the key event was the Back button and if there's history
	    if ((keyCode == KeyEvent.KEYCODE_BACK) && myWebView.canGoBack()) {
	        myWebView.goBack();
	        return true;
	    }
	  //  return true;
	    // If it wasn't the Back key or there's no web page history, bubble up to the default
	    // system behavior (probably exit the activity)
	    return super.onKeyDown(keyCode, event);
	}


	
}

package com.android.webviewtest;

import android.content.Context;
import android.webkit.JavascriptInterface;
import android.widget.Toast;

public class WebAppInterface {
    Context mContext;

    /** Instantiate the interface and set the context */
    WebAppInterface(Context c) {
        mContext = c;
    }

    /** Show a toast from the web page */
    @JavascriptInterface
    public void showToast(String toast) {
        Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show();
    }
}

html代码
<input type="button" value="Say hello" onClick="showAndroidToast('Hello Android!')" />
这里调用android中的方法
<script type="text/javascript">
    function showAndroidToast(toast) {
        Android.showToast(toast);
    }


 


你可能感兴趣的:(将网页嵌入到android应用中)