我尝试创建一个只需启动网站的应用程序。我得到的代码没有显示错误,但当我在网络测试中运行它时,应用程序崩溃并显示此错误消息。 “应用程序webView(进程com.webview)意外停止。请再试一次。 任何帮助都会被贬低。
以下是我班级和我的舱单的代码。
package com.webview;
import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
public class WebViewActivity extends Activity {
WebView mWebView;
@Override
public void onCreate(Bundle savedInstanceState)
{
final Activity mActivity = this;
super.onCreate(savedInstanceState);
// Adds Progrss bar Support
this.getWindow().requestFeature(Window.FEATURE_PROGRESS);
setContentView(R.layout.main);
// Makes Progress bar Visible
getWindow().setFeatureInt( Window.FEATURE_PROGRESS, Window.PROGRESS_VISIBILITY_ON);
mWebView = (WebView) findViewById( R.id.webview );
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.loadUrl("http://google.com");
mWebView.setWebChromeClient(new WebChromeClient()
{
public void onProgressChanged(WebView view, int progress)
{
//Make the bar disappear after URL is loaded, and changes string to Loading...
mActivity .setTitle("Loading...");
mActivity .setProgress(progress * 100); //Make the bar disappear after URL is loaded
}
});
}
}
清单
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.webview"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="10" />
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".WebViewActivity"
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>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<WebView
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
</LinearLayout>
</manifest>
调试器显示如下
[2012-02-09 13:57:18 - 模拟器]未知的savevm部分类型95
[2012-02-09 13:57:52 - WebView] HOME已启动设备'模拟器-5554'
[2012-02-09 13:57:52 - WebView]将WebView.apk上传到设备'emulator-5554'
[2012-02-09 13:57:52 - WebView]安装WebView.apk ......
[2012-02-09 13:58:14 - WebView]成功!
[2012-02-09 13:58:14 - WebView]在设备模拟器-5554上启动com.webview.WebViewActivity活动
[2012-02-09 13:58:15 - WebView] ActivityManager:开始:Intent {act = android.intent.action.MAIN
cat = [android.intent.category.LAUNCHER] cmp = com.webview / .WebViewActivity}
答案 0 :(得分:1)
试试这个,我所做的就是将WebView的声明移到main.xml,并且该更改效果很好。
的Manifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.webview"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="10" />
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".WebViewActivity"
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>
</manifest>
maix.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<WebView
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
</LinearLayout>
答案 1 :(得分:0)
您必须将webview的权限放在上面的清单中 这是许可:
如果没有此权限,webview将无效