调用WebView的loadUrl()方法,设置WevView要显示的网页:
互联网用:webView.loadUrl("http://www.google.com");
本地文件用:webView.loadUrl("file:///android_asset/XX.html"); 本地文件存放在: assets 文件中
mWebview.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// 返回值是true的时候控制去WebView打开,为false调用系统浏览器或第三方浏览器
view.loadUrl(url);
return false;
}
@Override
public void onReceivedSslError(WebView view,
SslErrorHandler handler, SslError error) {
// TODO Auto-generated method stub
handler.proceed();
}
//监听网页加载成功失败
@Override
public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) {
super.onReceivedError(view, request, error);
}
// 网页完成加载后回调
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
}
});
android 点击webview 页面实现android 本地调用
mWebview.addJavascriptInterface(new ToContract(getApplicationContext()),
"nativeProc");
@SuppressLint("NewApi")
class ToContract {
public Context context;
public ToContract(Context context) {
this.context = context;
}
@JavascriptInterface
public void toContract() {
Log.e("TAG", "succeed!!!!!");
new Thread(new MyThread()).start();
}
}
public class MyThread implements Runnable{
@Override
public void run() {
Message message =Message.obtain();
message.what =1;
handler.sendMessage(message);
}
}
@SuppressLint("HandlerLeak")
private Handler handler =new Handler(){
@Override
public void handleMessage(Message msg) {
switch (msg.what){
case 1:
// TODO
break;
}
}
};