使用Android Studio开发环境可以很方便的开发只包含一个webView控件的app,实现启动APP直接访问指定URL的效果,这样就可以使用web开发+app封装的形式发布应用,开发学习成本大大降低,具体方法如下:
先在Android Studio中新建一个blank Activity的工程,拖一个webView控件到页面中,设置属性layout:width和layout:height都是match_parent
默认状态下webView和屏幕边缘有padding空隙,需要在res/values/dimens.xml中修改如下:
<resources>
<!-- Default screen margins, per the Android Design guidelines. -->
<dimen name="activity_horizontal_margin">0dp</dimen>
<dimen name="activity_vertical_margin">0dp</dimen>
</resources>
编辑MainActivity.java实现app启动自动访问指定页面的效果,源代码如下:
package com.example.dexter.yudong;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//下面开始是我修改的内容
WebView myWV=(WebView) findViewById(R.id.webView); //先获取到拖放进来的webView控件
WebSettings ws=myWV.getSettings(); //获取webViewe的设置对象
ws.setJavaScriptEnabled(true); //设置允许使用javaScript
ws.setAllowFileAccess(true); //设置允许使用本地文件
ws.setGeolocationEnabled(true); //设置允许访问地理位置信息
//下面代码实现在当前webView控件中显示web页面,否则会调用系统自带浏览器进行访问
myWV.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// TODO Auto-generated method stub
view.loadUrl(url);
return true;
}
});
myWV.loadUrl("http://map.baidu.com"); //访问指定的地址
}
}