打开Android应用程序时出错

问题描述:

我是刚刚接触Android开发人员,我正在为我的大学项目编写一个应用程序。该应用程序传输存储在共享偏好设置中的一串数据。数据通过一次性安装屏幕存储问题是第一次后,当应用程序再次启动它显示“应用程序已不幸停止工作”,当我点击确定该应用程序启动。可以有人告诉我为什么发生这种情况? 代码:打开Android应用程序时出错

package com.example.homeautomation.zigbeehomeauto; 

import android.annotation.TargetApi; 
import android.content.SharedPreferences; 
import android.nfc.NdefMessage; 
import android.nfc.NdefRecord; 
import android.nfc.NfcAdapter; 
import android.os.Build; 
import android.os.Bundle; 
import android.support.v7.app.ActionBarActivity; 
import android.view.View; 
import android.widget.Toast; 


public class MainScreen extends ActionBarActivity { 
    NdefMessage msg; 
    NfcAdapter nfcadapter; 
    public static final String PREFS_NAME = "MyPrefsFile"; 
    public String pass2 ; 

    @Override 

    public void onCreate(Bundle savedInstanceState) { 

     super.onCreate(savedInstanceState); 

     setContentView(R.layout.activity_main_screen); 
     SharedPreferences check = getSharedPreferences(PREFS_NAME, 0); 
     String Pass = check.getString("Str", "Nothing"); 
     pass2 = Pass; 
     nfcadapter = NfcAdapter.getDefaultAdapter(this); 

     if (nfcadapter == null) { 
      Toast.makeText(this, "NFC is not available User", Toast.LENGTH_LONG) 
        .show(); 
      finish(); 

     } 







    } 




    public void ExApp(View v) { 

     finish(); 
     System.exit(0); 
    } 


    @TargetApi(Build.VERSION_CODES.JELLY_BEAN) 
    public void Nsend(View v) 
    { 
     byte[] stringBytes = pass2.getBytes(); 

     nfcadapter.setNdefPushMessage(msg = new NdefMessage(new NdefRecord[]{NdefRecord.createMime("text/plain", stringBytes) 

     }),this); 



    } 
} 

logcat的输出继电器:

04-07 12:04:38.478 10836-10836/com.example.homeautomation.zigbeehomeauto E/AndroidRuntime﹕ FATAL EXCEPTION: main 
    Process: com.example.homeautomation.zigbeehomeauto, PID: 10836 
    android.util.SuperNotCalledException: Activity {com.example.homeautomation.zigbeehomeauto/com.example.homeautomation.zigbeehomeauto.SetupScreen} did not call through to super.onCreate() 
      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2510) 
      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2603) 
      at android.app.ActivityThread.access$900(ActivityThread.java:174) 
      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1321) 
      at android.os.Handler.dispatchMessage(Handler.java:102) 
      at android.os.Looper.loop(Looper.java:146) 
      at android.app.ActivityThread.main(ActivityThread.java:5752) 
      at java.lang.reflect.Method.invokeNative(Native Method) 
      at java.lang.reflect.Method.invoke(Method.java:515) 
      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1291) 
      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1107) 
      at dalvik.system.NativeStart.main(Native Method) 

onCreate()SetupScreen类的方法,不叫super.onCreate()。添加声明并且错误应该消失。

+0

非常感谢你 – user3930213

检查您SetupScreen.java你有super.onCreate(savedInstanceState);onCreate()方法是开始。

发表您的SetupScreen.java代码也..

+0

非常感谢你 – user3930213