如果我只有一个活动,全局变量是否仍会导致NPE?

用户名

我读过许多关于应用程序类或Singletons中的全局变量有多糟糕的文章。对我来说,最大的问题是,当应用程序被系统杀死并且用户重新启动它时,它将导致NullPointerException。该应用程序将从用户之前所在的活动(而不是该应用程序的第一个活动)重新启动。全局变量不会永远留在内存中,因此启动最后一个Activity会导致NPE(如果您不手动检查是否为null)。

所有这些示例均使用具有多个活动的应用程序。单活动应用程序是否仍然存在此问题?

我试图在我的应用程序中复制NullPointerException,但是在我所有的设备上,该应用程序都会以第一个片段重新启动,因此该应用程序不会崩溃。

用户名

是的,他们有。它不会使我的应用程序崩溃的原因是,在没有先创建单例数据的情况下,我没有片段。我通过用会议室数据库替换单例来解决此问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

是否可以有一个条件为全局变量的Shiny ConditionalPanel?

这是否能够在 PostgreSQL 中有一个事务明智的全局变量?

有没有办法创建一个可以在所有活动中访问的全局变量

如果我只有一个磁盘,是否需要RAID?

Qt:如果只有一个编写器线程,我是否需要互斥锁?

是否有一个函数可以更改由JS中的参数给定的全局变量?

如果我只有一个静态变量的类-我应该将该类声明为静态的吗?

如何用另一个变量替换所有全局变量?

一个用于临时结果的局部范围属性数组是否比许多全局变量好?

转到:我如何创建一个全局变量来保存任何内容?

React Native - 如何从我的 fetch 方法中创建一个全局变量

我可以在同一个文件中将全局变量声明为 Flow 吗?

Raspi python MultiThreading,我想继续引用一个全局变量

如果系统上只有一个用户,那么/ root目录的内容是否与我的主要用户相同?

如果只有一个编写器线程,我们是否需要同步Java HashMap获取

如果只有一个方法的行为取决于对象的数据类型,我是否应该使类成为多态的?

如何拥有一个非常局部的全局变量?

如何获取所有框架以访问一个全局变量

如何在symfony模板中有一个来自db的全局变量?

在Rails中为所有控制器创建一个全局变量

重新设计一个函数,使其在C中没有全局变量

如何将 int 类型全局变量的值从一个活动转移到另一个活动并在 textview 中显示?

重新分配一个全局变量

从另一个模块访问全局变量

在scala中声明一个全局变量

重击:检查几个变量中的一个是否只有一个等于

在C ++中声明一个较大的全局变量会导致错误消息0xc0000018

如果我在一个表上只有一个非聚集索引,则写入时所包含的列数是否会改变速度变慢?

我可以创建一个ESLint规则来允许所有与正则表达式匹配的全局变量吗?