当我编写方法或使用成员变量时,我经常发现我需要在应用程序中共享它们.但他们应该去哪里? 我可以将Activity子类化,但是一旦我使用MapView并且被迫使用MapActivity就会失败,所以我的所有
          我可以将Activity子类化,但是一旦我使用MapView并且被迫使用MapActivity就会失败,所以我的所有活动都不会从我的子类继承.我有办法解决这个问题吗?
在继承不适用的情况下,我倾向于将泛型方法和成员变量放入Application对象的子类中,但我发现它创建了一堆代码,因为每个类都需要通过via获取对应用程序对象的访问权限上下文,或者我必须把它传下来.
我怀疑我最好创建MyApplication.getInstance()并将所有内容保存在单例中,而不是通过应用程序类传递应用程序对象.但之前我想看看你们要说些什么.
如果要访问活动之外的“Global Singleton”并且不希望通过所有涉及的对象传递Context来获取单例,则可以如您所述定义应用程序类中的静态属性,其中包含对自身的引用.只需在onCreate()方法中初始化该属性.例如:
public class ApplicationController extends Application {
    private static ApplicationController _appCtrl;
    public static ApplicationController getAppCtrl()
    {
         return _appCtrl;
    }
} 
 资源的一个示例:因为Application的子类也可以获取资源,所以只需在定义静态方法时可以访问它们,返回它们,如:
public static Resources getAppResources()
{
    return _appCtrl.getResources();
}
        
             