![](/img/trans.png)
[英]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.