我有一个活动,它是整个应用程序中使用的主要活动,它有许多变量.我有两个其他活动,我希望能够使用第一个活动的数据.现在我知道我可以这样做:
GlobalState gs = (GlobalState) getApplication();
String s = gs.getTestMe();
Run Code Online (Sandbox Code Playgroud)
但是我想分享很多变量,有些变量可能比较大,所以我不想像上面那样创建它们的副本.
有没有办法直接获取和更改变量而不使用get和set方法?我记得在Google开发网站上阅读了一篇文章,称不建议在Android上使用此功能.
我需要能够在我的应用程序中的多个活动中使用一个对象,并且它需要是同一个对象.做这个的最好方式是什么?
我已经尝试将对象设置为"公共静态",因此可以通过其他活动访问它,但由于某种原因,这并没有削减它.还有另一种方法吗?
在android中,使用静态变量是推荐的做法吗?例如,在Java中实现Singleton模式,我通常会这样做:
private static A the_instance;
public static A getInstance() {
if (the_instance == null) {
the_instance = new A();
}
return the_instance;
}
Run Code Online (Sandbox Code Playgroud)
此外,Android JVM何时清理它?
谢谢.
我试图在我的应用程序中的多个活动之间传递一个对象的ArrayList.是否可以使用setData()方法使用Intent执行此操作?