我正在使用Model-View-Presenter设计模式构建一个Android应用。我的应用程序收到Firebase消息传递通知,当我的应用程序未运行时,它会使用Intent将数据从通知栏传递到应用程序中。我已经完成所有这些工作,并且可以在onCreate方法中使用以下代码查看意图数据:
intent.extras?.let {
for (key in it.keySet()) {
val value = intent.extras?.get(key)
Log.d(TAG, "Key: $key Value: $value")
}
}
但是我想将此信息保存到演示者,并且演示者尚未创建。我可以在onCreate之后访问intents.extras吗?我尝试过并得到了一个空指针异常,因此它似乎在onCreate之后销毁了Intent对象。是这样吗我的演示者如何获得此数据?目前,我唯一的想法是在Activity中创建一个成员变量,然后将数据保存到onCreate中的该成员变量中,然后让演示者将其获取,但是我有点反对使用Model-View-主持人的设计模式有一个愚蠢的看法。
答案 0 :(得分:0)
onCreate之后可以访问intents.extras吗?
是的
我尝试过并得到一个空指针异常,因此看来inCreate之后ontent对象被销毁了。是这样吗?
否。
但是,如果您有一个名为intent
的属性或变量,那么intent.extras
可能会引用该属性或变量,而不是在活动本身上调用getIntent()
。