参考了:https://www.jianshu.com/p/ebf7948f3796
首页是前端会给到你html文件
目录基本上是这样的
![](https://i-blog.csdnimg.cn/blog_migrate/1155826615d42eb596425500f79463b0.png)
image.png
步骤1: 创建assets目录
用户安卓studio 新合建工程就不写了 ,下面的图是如何创建assets资源目录:
![](https://i-blog.csdnimg.cn/blog_migrate/c6d5865ac28b074a7b62556ca61b8ec7.png)
image.png
![](https://i-blog.csdnimg.cn/blog_migrate/27963dce51ce619607200cbb4e638934.png)
image.png
步骤2:拷贝html文件
![](https://i-blog.csdnimg.cn/blog_migrate/a3f6f9d91889420f5c4e6869fd88c047.png)
image.png
步骤3 加载入口页面 index.html
布局文件很简单就放一个WebView
![](https://i-blog.csdnimg.cn/blog_migrate/6478917dc8a106ecf045d614a53d53c3.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")
}
}