Android SDK Update(修订版18)导致NullPointer异常

时间:2012-04-12 10:19:08

标签: android nullpointerexception revision

慢慢地但我肯定会更新android SDK ......

今天我将SDK更新到版本18,我的项目(在更新完美工作之前)抛出NullPointer异常,即使我只是从eclipse启动它。我正在使用Android ADT的eclipse,并在更新SDK后更新此部分。我也尝试了“修复项目属性”但没有结果。

与此同时,我的项目已经退出了,所以一开始我只发布LogCat消息,如果有人需要更多信息,我会发布它。但我真的很失望,每次我更新SDK时,我的项目都会抛出一些新的,神秘的错误(遇到版本17的外部库问题......)。

希望有人可以帮助我!无论如何,我认为这不是代码的问题。它在某些我不知道的地方改变了:/

[更新]

我有一些额外的时间来调试代码。问题出现在construtor中。它看起来像这样(惊讶,惊讶):

@Override
public void onCreate(Bundle _savedInstanceState) 
{   /// Einstiegspunkt der Android App
    super.onCreate(_savedInstanceState);       
    setContentView(R.layout.login);
    LoadSharedPreferences();
}

在活动尝试转到LoadSharedPrefrerences方法后抛出异常......

[更新:第49行附近的代码]

...
SharedPreferences data = getSharedPreferences(_saveUserDataRef, MODE_PRIVATE);
String tmpUsername = data.getString("username", null);
String tmpPassword = data.getString("password", null);
username.setText(tmpUsername);
password.setText(tmpPassword);
...

如果您希望应用为您记住这些数据,请使用此代码段保存用户名和密码。因此,每次登录时都不需要编写它。

logcat的:

04-12 12:09:47.615: D/dalvikvm(1094): GC_EXTERNAL_ALLOC freed 47K, 48% free 2835K/5379K, external 0K/0K, paused 78ms
04-12 12:09:47.686: I/[POST_RESELECT](1094): [spanChange] (o, oldStart, newStart, oldEnd, newEnd)=(android.text.Selection$START@401462d0,-1,0,-1,0)
04-12 12:09:47.686: I/[POST_RESELECT](1094): [spanChange] (o, oldStart, newStart, oldEnd, newEnd)=(android.text.Selection$END@4011b730,-1,0,-1,0)
04-12 12:09:47.696: I/[POST_RESELECT](1094): [spanChange] (o, oldStart, newStart, oldEnd, newEnd)=(android.text.Selection$START@401462d0,-1,0,-1,0)
04-12 12:09:47.696: I/[POST_RESELECT](1094): [spanChange] (o, oldStart, newStart, oldEnd, newEnd)=(android.text.Selection$END@4011b730,-1,0,-1,0)
04-12 12:09:47.696: I/[POST_RESELECT](1094): [spanChange] (o, oldStart, newStart, oldEnd, newEnd)=(android.text.Selection$START@401462d0,-1,0,-1,0)
04-12 12:09:47.696: I/[POST_RESELECT](1094): [spanChange] (o, oldStart, newStart, oldEnd, newEnd)=(android.text.Selection$END@4011b730,-1,0,-1,0)
04-12 12:09:47.696: I/[POST_RESELECT](1094): [spanChange] (o, oldStart, newStart, oldEnd, newEnd)=(android.text.Selection$START@401462d0,-1,0,-1,0)
04-12 12:09:47.696: I/[POST_RESELECT](1094): [spanChange] (o, oldStart, newStart, oldEnd, newEnd)=(android.text.Selection$END@4011b730,-1,0,-1,0)
04-12 12:09:47.716: I/[POST_RESELECT](1094): [spanChange] (o, oldStart, newStart, oldEnd, newEnd)=(android.text.Selection$START@401462d0,-1,0,-1,0)
04-12 12:09:47.716: I/[POST_RESELECT](1094): [spanChange] (o, oldStart, newStart, oldEnd, newEnd)=(android.text.Selection$END@4011b730,-1,0,-1,0)
04-12 12:09:47.716: I/[POST_RESELECT](1094): [spanChange] (o, oldStart, newStart, oldEnd, newEnd)=(android.text.Selection$START@401462d0,-1,0,-1,0)
04-12 12:09:47.716: I/[POST_RESELECT](1094): [spanChange] (o, oldStart, newStart, oldEnd, newEnd)=(android.text.Selection$END@4011b730,-1,0,-1,0)
04-12 12:09:47.716: D/AndroidRuntime(1094): Shutting down VM
04-12 12:09:47.716: W/dalvikvm(1094): threadid=1: thread exiting with uncaught exception (group=0x400205a0)
04-12 12:09:47.726: E/AndroidRuntime(1094): FATAL EXCEPTION: main
04-12 12:09:47.726: E/AndroidRuntime(1094): java.lang.RuntimeException: Unable to start activity ComponentInfo{de.tzm.seanwesenheitsliste/de.tzm.seanwesenheitsliste.SEAnwesenheitslisteMainActivity}: java.lang.NullPointerException
04-12 12:09:47.726: E/AndroidRuntime(1094):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1830)
04-12 12:09:47.726: E/AndroidRuntime(1094):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1851)
04-12 12:09:47.726: E/AndroidRuntime(1094):     at android.app.ActivityThread.access$1500(ActivityThread.java:132)
04-12 12:09:47.726: E/AndroidRuntime(1094):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1038)
04-12 12:09:47.726: E/AndroidRuntime(1094):     at android.os.Handler.dispatchMessage(Handler.java:99)
04-12 12:09:47.726: E/AndroidRuntime(1094):     at android.os.Looper.loop(Looper.java:150)
04-12 12:09:47.726: E/AndroidRuntime(1094):     at android.app.ActivityThread.main(ActivityThread.java:4277)
04-12 12:09:47.726: E/AndroidRuntime(1094):     at java.lang.reflect.Method.invokeNative(Native Method)
04-12 12:09:47.726: E/AndroidRuntime(1094):     at java.lang.reflect.Method.invoke(Method.java:507)
04-12 12:09:47.726: E/AndroidRuntime(1094):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
04-12 12:09:47.726: E/AndroidRuntime(1094):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
04-12 12:09:47.726: E/AndroidRuntime(1094):     at dalvik.system.NativeStart.main(Native Method)
04-12 12:09:47.726: E/AndroidRuntime(1094): Caused by: java.lang.NullPointerException
04-12 12:09:47.726: E/AndroidRuntime(1094):     at de.tzm.seanwesenheitsliste.SEAnwesenheitslisteMainActivity.LoadSharedPreferences(SEAnwesenheitslisteMainActivity.java:49)
04-12 12:09:47.726: E/AndroidRuntime(1094):     at de.tzm.seanwesenheitsliste.SEAnwesenheitslisteMainActivity.onCreate(SEAnwesenheitslisteMainActivity.java:32)
04-12 12:09:47.726: E/AndroidRuntime(1094):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1072)
04-12 12:09:47.726: E/AndroidRuntime(1094):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1794)
04-12 12:09:47.726: E/AndroidRuntime(1094):     ... 11 more

1 个答案:

答案 0 :(得分:0)

我无法从你的帖子中看出第49行是哪一行,但我的猜测是:

data

nullgetSharedPreferences(_saveUserDataRef, MODE_PRIVATE); 尝试从tmpUsername获取后,

或:tmpPasswordnull中的一个data

你能试试看是否属实?如果是这样,你会知道接下来要去哪里解决问题。