参考了:https://www.jianshu.com/p/ebf7948f3796
首页是前端会给到你html文件
目录基本上是这样的
![](https://img-blog.csdnimg.cn/img_convert/7f3f50b0ad88091bff361cca6677c33b.png)
image.png
步骤1: 创建assets目录
用户安卓studio 新合建工程就不写了 ,下面的图是如何创建assets资源目录:
![](https://img-blog.csdnimg.cn/img_convert/8c9e6737c218ae649f70d5de75d32268.png)
image.png
![](https://img-blog.csdnimg.cn/img_convert/2f43f70130604f31432fa44261755abd.png)
image.png
步骤2:拷贝html文件
![](https://img-blog.csdnimg.cn/img_convert/3cb9f6403f4929725e30e31c0a372d28.png)
image.png
步骤3 加载入口页面 index.html
布局文件很简单就放一个WebView
![](https://img-blog.csdnimg.cn/img_convert/038641a19b33c5625afc710ca6625e11.png)
image.png
Activity中 加载
class MainActivity : AppCompatActivity() {
private val TAG = "MainActivity"
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
var webView = findViewById<WebView>(R.id.webView)
webView.loadUrl("file:///android_asset/web/index.html");
var path = filesDir.path
Log.d(TAG, "onCreate: $path")
}
}
你会发现加载是是一片空白 (简单的html是没有这个问题的,如果里面有引用js什么的 会就空白的)
解决办法:https://www.5axxw.com/questions/simple/kirhpn
最后修改后的加载代码示例是这样的
class MainActivity : AppCompatActivity() {
private val TAG = "MainActivity"
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
var webView = findViewById<WebView>(R.id.webView)
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setAllowFileAccess(true);
webView.loadUrl("file:///android_asset/web/index.html");
var path = filesDir.path
Log.d(TAG, "onCreate: $path")
}
}