我对此感到困惑,但我知道在Android上你可以缓存文件而不是什么,我试图做的是有一种方法我可以拥有一个共享的全局变量服务可以访问?这样我就不必将文件用于基本上只是一个变量的东西。基本上我希望IntentService
更新此变量,然后BroadcastReciever
可以访问。任何有关最佳实践方法的建议都将受到赞赏。
答案 0 :(得分:1)
我想说这是一个Java问题,然后应用于Android上下文。除此之外,您可以创建一个包含变量并从外部引用它的类。
您现在的问题是获取对该对象的引用,并且有两种方法:
第二个是这样的:
public class Wrapper {
private Object mVariable;
private static sInstance;
private Wrapper(){
}
public static Wrapper getInstance(){
if(sInstance == null){
sInstance = new Wrapper();
}
return sInstance;
}
// setters and getters for variables
}
请注意,您必须考虑另一个问题。并发性怎么样? 如果您使用后台服务,可能是在另一个线程中执行某些工作,并且您可能希望变量是易失性的,或者提供一些同步以确保元素始终更新。如果您包装要公开的变量,则可以控制包装器的创建和对变量的访问。