在Android 8设备的应用程序中更改语言后无法获取原始文件夹文件

在Android 8设备的应用程序中更改语言后无法获取原始文件夹文件,android,Android,我正在开发一个支持英语和德语两种语言的应用程序。我正在从原始文件夹加载一些html文件以在webview中显示它。为此,我创建了两个原始文件夹,即“raw”和“rawde”。在Oreo之前的设备上更改语言时,它会正确地从相应的原始文件夹加载html,但在Oreo上不起作用。下面是从原始文件夹加载html文件的代码 txt_desc.loadUrl("file:///android_res/raw/what_is_ergo.html"); 我不知道如何让它在安卓8.0上工作。任何帮助都将不胜感激

我正在开发一个支持英语和德语两种语言的应用程序。我正在从原始文件夹加载一些html文件以在webview中显示它。为此,我创建了两个原始文件夹,即“raw”和“rawde”。在Oreo之前的设备上更改语言时,它会正确地从相应的原始文件夹加载html,但在Oreo上不起作用。下面是从原始文件夹加载html文件的代码

txt_desc.loadUrl("file:///android_res/raw/what_is_ergo.html");

我不知道如何让它在安卓8.0上工作。任何帮助都将不胜感激。

您可以尝试如下方式读取原始文件:

byte[] buffer = new byte[1024];
StringBuilder builder = new StringBuilder();
val inputStream = context.getResources().openRawResource(R.raw.what_is_ergo);

while (it.read(buffer) != -1) {
   builder.append(String(buffer));
}

txt_desc.loadDataWithBaseURL("", builder.toString(), "text/html", "UTF-8", "");

您的代码可以正常工作,但我们需要使用
txt_desc.loadUrl(builder.toString())
而不是
txt_desc.loadDataWithBaseURL(“”,builder.toString(),“text/html”,“UTF-8”和“)