我遵循了从 SO post How to pass parameter into HTML file from android将数据传递到 HTML webview 的技巧。
我的Java中有这个:
try {
String template = streamToString(getAssets().open("html/index.html"));
String data = template.replaceAll("%PARAMETER%", PARAMETER);
webView.loadDataWithBaseURL("file:///android_asset/html/", data, "text/html", "utf-8", null);
} catch (IOException e) {
e.printStackTrace();
}
在我的 HTML 中,我有 string "%PARAMETER%"
。
该解决方案适用于我运行 Android 2.3.6 的测试设备,但不适用于运行 Android 4.1.1 的设备。HTML 有一些 CSS 和 JS 文件。问题与 HTML 页面的内容有关吗?
关于我想要实现的目标有什么更好的方法吗?简单我只想将数据从 Java 发送到 HTML webview。
这是 HTML 的内容:
<!DOCTYPE html>
<html>
<head>
<title>Like a Pub</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="jquery.mobile-1.2.0.min.css" />
<script type="text/javascript" src="jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="jquery.mobile-1.2.0.min.js"></script>
<script type="text/javascript">
$('#index-page').live('pageshow', function(event, data){
//
});
</script>
</head>
<body>
<div data-role="page" id="index-page">
%WEBSITE_URL%
</div>
</body>
</html>