webview崩溃的活动(Android Studio)

时间:2017-06-02 21:34:00

标签: java android webview nullpointerexception

编辑:已解决,项目中存在两个xml文件“individual_stats.xml”。

在互联网上进行了几项研究之后,我还没有找到任何关于我的Activity崩溃的解决方案。该活动仅包含webview。

此外,我是Android Studio的新手。

这是致命错误:

06-02 22:57:06.255 7618-7618/fr.berwick.smsstats E/AndroidRuntime: FATAL EXCEPTION: main
                                                                   Process: fr.berwick.smsstats, PID: 7618
                                                                   java.lang.RuntimeException: Unable to start activity ComponentInfo{fr.berwick.smsstats/fr.berwick.smsstats.IndividualStats}: java.lang.NullPointerException: Attempt to invoke virtual method 'android.webkit.WebSettings android.webkit.WebView.getSettings()' on a null object reference
                                                                       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2659)
                                                                       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2724)
                                                                       at android.app.ActivityThread.-wrap12(ActivityThread.java)
                                                                       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1473)
                                                                       at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                       at android.os.Looper.loop(Looper.java:154)
                                                                       at android.app.ActivityThread.main(ActivityThread.java:6123)
                                                                       at java.lang.reflect.Method.invoke(Native Method)
                                                                       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
                                                                       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:757)
                                                                    Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.webkit.WebSettings android.webkit.WebView.getSettings()' on a null object reference
                                                                       at fr.berwick.smsstats.IndividualStats.onCreate(IndividualStats.java:19)
                                                                       at android.app.Activity.performCreate(Activity.java:6672)
                                                                       at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1140)
                                                                       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2612)
                                                                       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2724) 
                                                                       at android.app.ActivityThread.-wrap12(ActivityThread.java) 
                                                                       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1473) 
                                                                       at android.os.Handler.dispatchMessage(Handler.java:102) 
                                                                       at android.os.Looper.loop(Looper.java:154) 
                                                                       at android.app.ActivityThread.main(ActivityThread.java:6123) 
                                                                       at java.lang.reflect.Method.invoke(Native Method) 
                                                                       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867) 
                                                                       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:757) 

请考虑以下事项:当我将webview添加到布局(拖动它)时,ID字段为空,因此我将WebView命名为“WebView”并将android:id =“@ + id / WebView”添加到我的活动中xml文件“individual_stats.xml”。

以下是IndividualStats.java文件中的代码:

package fr.berwick.smsstats;

import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebView;

public class IndividualStats extends Activity {
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.individual_stats);

            WebView webview = (WebView) findViewById(R.id.WebView);
            webview.getSettings().setJavaScriptEnabled(true);
            webview.loadUrl("https://speeload.com/");

        }
}

感谢您的帮助,祝您有个美好的一天。

4 个答案:

答案 0 :(得分:0)

尝试在xml中为您的webview提供更独特的名称吗?

答案 1 :(得分:0)

试试这个:

final WebView webview = (WebView) findViewById(R.id.WebView);
webview.setWebViewClient(new WebViewClient());

WebSettings websetting = webview.getSettings();
websetting.setJavaScriptEnabled(true);
webview.loadUrl("https://speeload.com/");

答案 2 :(得分:0)

你正在开发compileSdkVersion和minSdkVersion?在哪个API上运行您的设备/模拟器?可能是一个较旧的WebKit错误。

答案 3 :(得分:0)

好的,我发现了什么问题:

我有两个名为“individual_stats.xml”的xml文件。 我删除了它们并创建了一个新的,它现在正在工作。