Android:无法从意图获取数据
Posted
技术标签:
【中文标题】Android:无法从意图获取数据【英文标题】:Android: Unable to get data from intent 【发布时间】:2016-11-15 06:54:45 【问题描述】:我正在尝试从 Intent 值中获取 onActivityForResult() 中的字符串值。
这就是我通过 Intent 的方式
Intent intent = new Intent();
intent.putExtra("state", getResources().getString(R.string.intent_skip_pin_setup));
setResult(RESULT_OK, intent);
finish();
现在我得到的“状态”如下:
intent_get.getStringExtra("state")
但我得到了空值。这是因为我没有使用startActivity(intent)
。我不想重定向,因为我想要的视图在后台。
这就是我检查的方式:
if (getIntent().getExtras().getString("state") != null)
if ((getIntent().getExtras().getString("state").equals("save_pin_setup") || getIntent().getExtras().getString("state").equals("skip_pin_setup")))
doLaunchDashboard();
有没有办法像我们使用 Intent 或 Bundle 一样保存和获取数据。因为我没有开始活动,我认为我不能使用它们(intent/bundle)。
【问题讨论】:
您能提供更多代码吗?我不明白这种情况背后的想法。 @Adithya.K 你想达到什么目的? onActivityForResult 旨在将数据从一个活动传递到另一个活动。如果您没有使用您创建的 Intent 开始活动,它将不会得到它。在这种情况下,使用其他机制在活动之间共享日期。也许广播会满足你的需要。 【参考方案1】:使用intent_get.getExtras().getString("state")
但在此之前检查 intent_get
和 intent_get.getExtras()
是否不为空。 (检查意图额外内容可能非常疯狂)
【讨论】:
获取:错误 Intent 为 NULL,应用程序崩溃!以上是关于Android:无法从意图获取数据的主要内容,如果未能解决你的问题,请参考以下文章