Webview意外停止问题

时间:2012-02-09 19:49:51

标签: android android-emulator android-webview

我尝试创建一个只需启动网站的应用程序。我得到的代码没有显示错误,但当我在网络测试中运行它时,应用程序崩溃并显示此错误消息。 “应用程序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}

2 个答案:

答案 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将无效