如果想在APP中访问网页,但是不打开系统浏览器,还是比较容易实现的。因为Android中提供一个WebView控件,用于展示各种网页。
比如,在APP中打开百度页面,如下
实现:
1、布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<WebView
android:id="@+id/my_webview"
android:layout_width="match_parent"
android:layout_height="match_parent">
</WebView>
</LinearLayout>
2、MainActivity.java
public class MainActivity extends AppCompatActivity {
private WebView mWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//获得WebView实例
mWebView = (WebView) findViewById(R.id.my_webview);
//getSettings方法可以设置一些浏览器的属性
//使用setJavaScriptEnabled方法来让WebView支持JavaScrip脚本
mWebView.getSettings().setJavaScriptEnabled(true);
//调用WebView的setWebViewClient()方法并传入一个WebViewClient的实例
//当需要从一个网页跳转到另一个网页时,这个方法可以让目标网页仍然在当前WebView中显示,而不是打开系统浏览器;
mWebView.setWebViewClient(new WebViewClient());
//将网址传入
mWebView.loadUrl("http://www.baidu.com");
}
}
3、在清单文件中声明网络权限
<uses-permission android:name="android.permission.INTERNET"/>
好啦,然后运行一下,就出现上述效果了。