我是 Stack Exchange 和 Andorid 开发的新手。
我正在研究Android webview。我的活动课程中有以下代码。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
WebView wv;
WebSettings ws;
try {
wv = (WebView) findViewById(R.id.webview);
ws = wv.getSettings();
ws.setJavaScriptCanOpenWindowsAutomatically(true);
ws.setJavaScriptEnabled(true);
wv.clearCache(true);
wv.loadUrl("http://<ip address>:<port>/<context>");
} catch (Exception e) {
e.printStackTrace();
}
}
在 layout-main.xml 中:
<WebView
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
在 AndroidManifest.xml 中:
<uses-sdk android:minSdkVersion="10" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".POCActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
在网址中,我有 index.html 和以下代码:
<!DOCTYPE html>
<html>
<head>
<title>Contact Example</title>
<script type="text/javascript">
alert("Start");
</script>
</head>
<body>
<p>Database 1</p>
<div id="test"></div>
</body>
</html>
工作环境: - Eclipse indigo - Android SDK 最低版本 10 - Build Target 2.3.3
但是 android 代码只工作一次,即当我创建一个新的 android 项目并运行相同的项目时,我可以看到出现 javascript 警报。从下次开始不再显示 javascript 警报。即使是html页面中的任何文本更改(比如我将“数据库1”修改为“数据库2”)也不会显示。
我尝试了以下方法: - 清除 appcache - 卸载应用程序,然后再次运行项目 - 清除
请让我知道我在这里做错了什么。任何帮助都感激不尽。