首页 > 解决方案 > Android - 两个 Activity 无法从九个中获得 Bundle Extras

问题描述

所以我有 9 项活动,最初是相互复制和粘贴。据我所知,它们实际上仅在复选框和文本字段的数量上有所不同。其中两项活动无法接收捆绑附加服务,这让我很困惑。我可以在 7 项工作活动之间自由移动,但最后两项不会从任何其他活动中获得 Bundle Extras。

唯一传递的信息是一个 int。

发件人示例

myIntent = new Intent(getBaseContext(), PostSession.class);
output.putInt("flightId", mFlightInfoId);
startActivity(myIntent);
overridePendingTransition(0, 0);

接收者来自一项非工作活动的示例

Bundle extras = getIntent().getExtras();
mFlightInfoId = extras.getInt("flightId");

错误信息

java.lang.RuntimeException:无法启动活动 ComponentInfo{project.xyz.logging/project.xyz.logging.PostSession}:java.lang.NullPointerException:尝试调用虚拟方法 'int android.os.Bundle.getInt(java. lang.String)' 在空对象引用上

标签: javaandroidandroid-7.1-nougat

解决方案


您是否尝试过使用以下代码。我建议你看看这个教程

mFlightInfoId = getIntent().getIntExtra("flightId");

推荐阅读