[英]Receive this error: unfortunately the app has stopped, when running my app
[英]my application keeps receiving “Unfortunately ”My App“ has stopped” after Running the app
實施WebView Client后,我的應用程序在運行應用程序后繼續收到“不幸的是,“我的應用程序”已停止”。 這是我最大的遺憾
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="amapps.com.uhss" >
<uses-permission android:name="android.permission.INTERNET"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="UHS Sword And Shield"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="UHS Sword and Shield" >
android:hardwareAccelerated="false"
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
如您所見,我已經實現了Internet權限
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class MainActivity extends Activity {
private WebView mWebView = (WebView) findViewById(R.id.activity_main_webview);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(amapps.com.uhss.R.layout.activity_main);
WebView mWebView = (WebView) findViewById(R.id.activity_main_webview);
mWebView.setWebViewClient(new WebViewClient());
WebSettings webSettings = mWebView.getSettings();
webSettings.setJavaScriptEnabled(false);
mWebView.loadUrl("http://uhsswordandshield.com/");
mWebView.getSettings().setSupportMultipleWindows(true);
}
所以有人可以告訴我清單或主要活動出了什么問題。 在將WebView客戶端實現到應用程序中以處理應用程序中的打開鏈接之前,我的應用程序已運行。 謝謝!
將這行放在setContentView之后的create上
private WebView mWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(amapps.com.uhss.R.layout.activity_main);
mWebView = (WebView) findViewById(R.id.activity_main_webview);
}
在onCreate()之前創建webview的對象。
private WebView mWebView;
然后在setContentView之后初始化webview對象。
mWebView = (WebView) findViewById(R.id.activity_main_webview);
在這條線
private WebView mWebView = (WebView) findViewById(R.id.activity_main_webview);
在onCreate之上,您甚至試圖在使用setContent視圖設置視圖之前實例化Web視圖,因此您將收到空指針異常。 請刪除它。 它會工作。
將此行放入onCreateView()中,您會發現findiview超出范圍而出錯
private WebView mWebView = (WebView) findViewById(R.id.activity_main_webview);
您必須按照以下步驟進行操作
private WebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(amapps.com.uhss.R.layout.activity_main);
mWebView = (WebView) findViewById(R.id.activity_main_webview);
}
刪除線
private WebView mWebView = (WebView) findViewById(R.id.activity_main_webview);
后
public class MainActivity extends Activity
每當您要初始化某些內容時,請確保在setContentView
之后對其進行初始化 。 您的問題是您兩次初始化了webView
,第一個是在public class MainActivity extends Activity
之后初始化的,因此您將得到nullpointerException
錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.