如何正确创建和使用Android全局变量?

如何正确创建和使用Android全局变量?,android,singleton,global-variables,static-classes,Android,Singleton,Global Variables,Static Classes,我有一个应用程序,它的不同活动需要访问可以存储在全局变量中的许多值,以便知道哪些视图应该可见和/或启用。它是一种视图可见性变量。问题是,我想在这个对象的不同属性中保存所有这些可见性值,并且我想让这个对象在整个应用程序生命周期中保持安全活动,然后是当我谈到全局变量时 我读过不同的选项来实现这一点: 1) 使用单例模式在主活动中创建此对象 2) 将此对象创建为静态类,并实现主活动中的值 3) 在主活动中将此对象创建为calss扩展应用程序 然后,应该从应用程序的每个活动调用和访问该对象。但是,这些选

我有一个应用程序,它的不同活动需要访问可以存储在全局变量中的许多值,以便知道哪些视图应该可见和/或启用。它是一种视图可见性变量。问题是,我想在这个对象的不同属性中保存所有这些可见性值,并且我想让这个对象在整个应用程序生命周期中保持安全活动,然后是当我谈到
全局变量时

我读过不同的选项来实现这一点:

1) 使用单例模式在主活动中创建此对象

2) 将此对象创建为静态类,并实现主活动中的值

3) 在主活动中将此对象创建为calss扩展应用程序

然后,应该从应用程序的每个活动调用和访问该对象。但是,这些选项中是否有一个正确且有效地访问全局变量?是否建议避免使用全局变量?


谢谢

您可以使用Sigleton模式访问整个应用程序中的特定对象,并且只创建一次,在应用程序类中创建并保持同步。但是,安全吗?就内存泄漏而言,例如@ArslanSheeraziNo不安全,您必须自己管理它,何时销毁该对象,否则它将出现内存泄漏。您可以使用Dagger来解决这些问题scenarios@ArslanSheerazi匕首有什么是你自己做不到的:)