Android Studio中WebView加载two.html提示文件不存在问题求助
解决WebView加载本地two.html提示文件不存在的问题
嘿,我刚梳理了你的问题,这是新手用WebView加载本地HTML时很容易碰到的小问题,咱们一步步来排查解决:
1. 先确认文件位置与命名
- 确保
two.html和index.html完全放在同一个目录下:也就是app/src/main/assets/文件夹内,别把two.html放在assets的子文件夹里哦。 - 注意Android系统区分文件名大小写,比如
Two.html和two.html会被当成不同文件,一定要保证链接里的文件名和实际文件名完全一致。
2. 检查index.html里的链接写法
你在index.html里的跳转链接必须是正确的相对路径,比如应该写成:
<a href="two.html">打开第二个页面</a>
不要用绝对路径(比如硬写file:///android_asset/two.html),相对路径更稳妥,也不容易出错。
3. 给WebView添加WebViewClient处理内部跳转
你的MainActivity代码里缺少了WebViewClient的设置,这会导致WebView可能用系统浏览器打开链接,或者无法正确解析本地资源路径。修改后的代码如下:
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); String myurl="file:///android_asset/index.html"; WebView view=(WebView)this.findViewById(R.id.webView); view.getSettings().setJavaScriptEnabled(true); // 添加这部分代码,让WebView自己处理页面内跳转 view.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } }); view.loadUrl(myurl); } }
4. 重新打包项目确保文件被包含
有时候Android Studio可能没把assets文件夹里的新文件打包进APK,你可以依次执行:
Build->Clean ProjectBuild->Rebuild Project
重新构建后再安装到手机上测试。
从你提供的Logcat来看,没有直接指向文件缺失的错误日志,所以重点排查上面这几个步骤应该就能解决问题啦~
内容的提问来源于stack exchange,提问作者sravanthi
相关产品推荐
相关产品推荐

