gpt4 book ai didi

android - getExtras(name).getString 和 getIntent().getStringExtra(name) 的区别

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:52:54 25 4
gpt4 key购买 nike

我的 Android 应用程序有一些错误报告,它是 Activity 中 onCreate() 中的 Nullpointerexception。失败的代码是getIntent().getExtras().getStringExtra("name")。(Nullpointerexception)

这意味着 getExtras() 不知何故为 null。我确信我在创建 Intent 的每个地方都设置了额外的 Intent 。我无法在设备上的模拟器上重新创建它。我认为它发生在我的真实设备上(但不是在我调试时)在我尝试再次打开应用程序之后,与此同时 Android 可能会终止进程并再次重新创建 Activity 。但即使在这种情况下,也不应该保留额外的 Intent 吗?

我试图终止模拟器上的进程,再次调用 onCreate 并且 getExtras() 返回了正确的值。

我用 getIntent().getStringExtra() 替换了代码。除了不会抛出 nullpointerexception 但仍会将 String 设置为 null 之外,有什么区别。还有什么区别吗?

可能是什么原因造成的?

最佳答案

如果没有额外内容,Intent.getStringExtra() 将返回 null。如果没有额外内容,Intent.getExtras() 将返回 null,因此您需要在尝试调用 getString() 或其他方法之前检查它。

关于android - getExtras(name).getString 和 getIntent().getStringExtra(name) 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5851649/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com