实际上我们通常是使用WebView控件对本地html进行读取,这样就可以体会类似web
app和安卓原生混合开发的乐趣了。在读取本地html并展示在前台的时候,并不需要在Androidmenifast.xml文件当中设置相应的网络权限,也不需要设置https协议,因为安卓手机的本地服务器应该都是基于http协议的,一个手机又不可能去申请一个ssl安全证书。我们只需要把WebView控件访问基于http协议的网络的代码稍作修改即可,在写代码之前,我们还需要创建一个assets文件夹,将我们所对应的html文件放置在这个文件夹里,具体创建这个文件夹的过程可以参见这篇博客:
https://www.cnblogs.com/geeksongs/p/10673133.html 
<https://www.cnblogs.com/geeksongs/p/10673133.html>   

我们的代码如下:

 MainActivity.java
import android.support.v7.app.AppCompatActivity; import android.os.Bundle;
import android.net.http.SslError; import android.os.Bundle; import
android.support.v7.app.AppCompatActivity; import
android.webkit.SslErrorHandler; import android.webkit.WebSettings; import
android.webkit.WebView; import android.webkit.WebViewClient;public class
MainActivity extends AppCompatActivity {private WebView webView; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);
init(); }private void init(){ webView = (WebView) findViewById(R.id.webView); //
需要加载的网页的url webView.loadUrl("file:///android_asset/index2.html"
);//这里写的是assets文件夹下html文件的名称,需要带上后面的后缀名,前面的路径是安卓系统自己规定的android_asset就是表示的在assets文件夹下的意思。
webView.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);
//自适应屏幕 webView.getSettings().setLoadWithOverviewMode(true);//自适应屏幕
webView.getSettings().setSupportZoom(true);
webView.getSettings().setUseWideViewPort(true);//扩大比例的缩放
webView.getSettings().setBuiltInZoomControls(true);//设置是否出现缩放工具 WebSettings
settings = webView.getSettings(); //
如果访问的页面中要与Javascript交互,则webview必须设置支持Javascript settings.setJavaScriptEnabled(
true); webView.setWebViewClient(new WebViewClient(){ public boolean
shouldOverrideUrlLoading(WebView view, String url){ view.loadUrl(url);return
true; } });} }
我觉得上面注释也写得比较详细了,可以根据自己的需求根据注释作一些必要的更改。

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信