【问题标题】:RuntimeException: Unable to resume activity. Intent getting ExtrasRuntimeException:无法恢复活动。意图获得额外服务
【发布时间】:2012-12-10 19:49:29
【问题描述】:

我真的不知道出了什么问题: 我制作了功能,将用户移动到 AddNewQuestionClass

//function is in Activity Class
public void wroc(String sciezka){
    Intent intent = new Intent(this, AddNewQuestion.class);
    intent.putExtra("sciezka1", sciezka);
    startActivity(intent);
}

我还发送“sciezka”变量。现在,我在 AddNewQuestionClass 中得到了这个变量:

@Override
protected void onResume() {
    super.onResume();
    Bundle bundle = getIntent().getExtras();
    sciezka_do_pliku_z_obrazem = bundle.getString("sciezka1");
    Uri myUri = Uri.parse(sciezka_do_pliku_z_obrazem);
    try {

        Bitmap jakisobraz = MediaStore.Images.Media.getBitmap(this.getContentResolver(), myUri);
        obrazekdoedycji.setImageBitmap(jakisobraz);
    }
    catch(Exception e){
        Log.e("EO", " " + e);
    }
}

不幸的是,有些东西不起作用:

12-10 20:21:12.213: E/AndroidRuntime(9173): FATAL EXCEPTION: main
12-10 20:21:12.213: E/AndroidRuntime(9173): java.lang.RuntimeException: Unable to resume activity {app.piotrek.learning/app.piotrek.learning.AddNewQuestion}: java.lang.NullPointerException
12-10 20:21:12.213: E/AndroidRuntime(9173):     at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2701)
12-10 20:21:12.213: E/AndroidRuntime(9173):     at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2729)
12-10 20:21:12.213: E/AndroidRuntime(9173):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2215)
12-10 20:21:12.213: E/AndroidRuntime(9173):     at android.app.ActivityThread.access$600(ActivityThread.java:142)
12-10 20:21:12.213: E/AndroidRuntime(9173):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1208)
12-10 20:21:12.213: E/AndroidRuntime(9173):     at android.os.Handler.dispatchMessage(Handler.java:99)
12-10 20:21:12.213: E/AndroidRuntime(9173):     at android.os.Looper.loop(Looper.java:137)
12-10 20:21:12.213: E/AndroidRuntime(9173):     at android.app.ActivityThread.main(ActivityThread.java:4931)
12-10 20:21:12.213: E/AndroidRuntime(9173):     at java.lang.reflect.Method.invokeNative(Native Method)
12-10 20:21:12.213: E/AndroidRuntime(9173):     at java.lang.reflect.Method.invoke(Method.java:511)
12-10 20:21:12.213: E/AndroidRuntime(9173):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
12-10 20:21:12.213: E/AndroidRuntime(9173):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:558)
12-10 20:21:12.213: E/AndroidRuntime(9173):     at dalvik.system.NativeStart.main(Native Method)
12-10 20:21:12.213: E/AndroidRuntime(9173): Caused by: java.lang.NullPointerException
12-10 20:21:12.213: E/AndroidRuntime(9173):     at app.piotrek.learning.AddNewQuestion.onResume(AddNewQuestion.java:185)
12-10 20:21:12.213: E/AndroidRuntime(9173):     at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1184)
12-10 20:21:12.213: E/AndroidRuntime(9173):     at android.app.Activity.performResume(Activity.java:5082)
12-10 20:21:12.213: E/AndroidRuntime(9173):     at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2691)
12-10 20:21:12.213: E/AndroidRuntime(9173):     ... 12 more

这是#185行(有错误):

 sciezka_do_pliku_z_obrazem = bundle.getString("sciezka1");

怎么了?

【问题讨论】:

  • 尝试从附加组件中获取它,而不是从捆绑包中获取。
  • 如果您还没有解决这个问题,您能否在将其插入 Intent Extras 和从捆绑包中检索之前打印出该值,以便我们确认其中的内容不为 null 并且出来的是什么?

标签: android android-intent nullpointerexception bundle runtimeexception


【解决方案1】:

试试这个

getIntent().getStringExtra("sciezka1");

而不是捆绑... 希望能解决你的问题

【讨论】:

  • 同样的错误:/ 当我把它放到 try/catch 中时,在日志中我有这个:12-11 21:01:04.670: E/EO(19298): java.io.FileNotFoundException:没有内容提供者:/storage/sdcard0/AAProgramDoNauki/uuu.png
【解决方案2】:

您的变量 sciezka 似乎为空,因此稍后在onResume() bundle.getString('sciezka')sciezka 的值为空,从而引发空指针异常。

确保sciezka不为空,你可以在

之后做一个Log.i

intent.putExtra("sciezka1", sciezka); 转储变量 sciezka 以确认这一点。

【讨论】:

  • sciezka 当然不为空:/
【解决方案3】:

您尝试调用方法getString() 的捆绑包似乎为空。这就是你得到空指针异常的原因。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-06
    • 1970-01-01
    • 2012-12-13
    • 1970-01-01
    • 1970-01-01
    • 2014-11-04
    相关资源
    最近更新 更多