gpt4 book ai didi

android - Webview 在 Android 中加载本地 html 页面缓慢

转载 作者:太空宇宙 更新时间:2023-11-03 12:23:00 30 4
gpt4 key购买 nike

您好,我在 webchromeclient 上处理了一些 javascript 警报后正在加载本地 html 文件,但是在我调用 webview 的 loadUrl 方法后,我的本地 html 页面加载非常缓慢,它等待大约 20 秒加载。

下面是我的代码:

@Override
public boolean onJsAlert(WebView view, String url, String message,
JsResult result) {
// TODO Auto-generated method stub

result.confirm();

if (message.contains(GeneralConstants.ALERT_LOGIN_TIMUSER)) {
String s[] = message.split(";");

//Set ldap user


view.loadUrl("file:///android_asset/mainMenu.html");

return true;
}

感谢您的任何建议。

最佳答案

尝试这段代码以获得更好的性能

    AssetManager mgr = getContext().getAssets();
try {
InputStream in = mgr.open(FileName,AssetManager.ACCESS_BUFFER);

String sHTML = streamToString(in);
in.close();

//display this html in the browser
WebView w = (WebView) findViewById(R.id.webview);
w.getSettings().setDefaultZoom(ZoomDensity.FAR);
w.loadDataWithBaseURL("file:///android_asset/", sHTML, "text/html", "utf-8", null);

} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}



public static String StreamToString(InputStream in) throws IOException {
if(in == null) {
return "";
}

Writer writer = new StringWriter();
char[] buffer = new char[1024];

try {
Reader reader = new BufferedReader(new InputStreamReader(in, "UTF-8"));

int n;
while ((n = reader.read(buffer)) != -1) {
writer.write(buffer, 0, n);
}

} finally {

}

return writer.toString();
}

关于android - Webview 在 Android 中加载本地 html 页面缓慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9989766/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com