启动浏览器:
- 启动默认浏览器
Uri uri = Uri.parse("https://www.baidu.com");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
- 启动指定浏览器
Uri uri = Uri.parse("https://www.baidu.com");
Intent intent = new Intent(Intent.ACTION_VIEW,uri);
//打开UC浏览器
//intent.setClassName("com.UCMobile","com.uc.browser.InnerUCMobile");
//打开QQ浏览器
intent.setClassName("com.tencent.mtt","com.tencent.mtt.MainActivity");
startActivity(intent);
WebView:
WebView:
<!--WebView是在控件的范围内显示网页内容,并且可以点击支持缩放-->
<WebView
android:id="@+id/wv_container" //id
android:layout_width="match_parent" //宽度
android:layout_height="match_parent" //高度
android:layout_centerInParent="true" /> //居中显示,将这个控件显示在设计模式的中间位置
然后到java类里编写:
private WebView mWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mWebView = (WebView) findViewById(R.id.wv_container);
// 加载网页
mWebView.loadUrl("http://www.baidu.com/");
// 获取WebView设置
WebSettings settings = mWebView.getSettings();
// 启动javascript支持
settings.setJavaScriptEnabled(true);
//设置WebView可缩放大小
mWebView.getSettings().setBuiltInZoomControls(true);
mWebView.setInitialScale(150);
//绑定网页
mWebView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// 解决防止跳转到第三方浏览器
view.loadUrl(url);
return true;
}
/**
* 页面启动加载
* @param view
* @param url
* @param favicon
*/
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
}
/**
* 页面加载完成
* @param view
* @param url
*/
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
}
});
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN) {
//按Back键回退上一级
mWebView.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
}
WebSettings常用方法:
setAllowFileAccess 启用或禁止WebView访问文件数据
setBlockNetworkImage 是否显示网络图像
setBuiltInZoomControls 设置显示缩放按钮
setDisplayZoomControls 设置是否支持缩放
setCacheMode 设置缓冲的模式
setDefaultFontSize 设置默认的字体大小
setDefaultTextEncodingName 设置在解码时使用的默认编码
setFixedFontFamily 设置固定使用的字体
setJavaSciptEnabled 设置是否支持JavaScript
setLayoutAlgorithm 设置布局方式
setLightTouchEnabled 设置用鼠标激活被选项
setSupportZoom 设置是否支持变焦
WebViewClient常用方法:
doUpdate VisitedHistory 更新历史记录
onFormResubmission 应用程序重新请求网页数据
onLoadResource 加载指定地址提供的资源
onPageFinished 网页加载完毕
onPageStarted 网页开始加载
onReceivedError 报告错误信息
onScaleChanged WebView发生改变
shouldOverrideUrlLoading 控制新的连接在当前WebView中打开
WebChromeClient常用方法:
onCloseWindow 关闭WebView
onCreateWindow 创建WebView
onJsAlert 处理Javascript中的Alert对话框
onJsConfirm处理Javascript中的Confirm对话框
onJsPrompt处理Javascript中的Prompt对话框
onProgressChanged 加载进度条改变
onReceivedlcon 网页图标更改
onReceivedTitle 网页Title更改
onRequestFocus WebView显示焦点