Browser App的Application组件为Browser类,主要用来做初始化数据,如果app中没有定义Application,则系统会自动创建一个Application组件。
Application的生命周期是整个程序中最长的,它的生命周期等于这个app的生命周期。因为它是全局单例的一个类,所以在不同的Activity,Service中获得的Application都指向同一个对象。
public class Browser extends Application {
private final static String LOGTAG = "browser";
// Set to true to enable verbose logging.
final static boolean LOGV_ENABLED = false;
// Set to true to enable extra debug logging.
final static boolean LOGD_ENABLED = true;
@Override
public void onCreate() {
super.onCreate();
if (LOGV_ENABLED)
Log.v(LOGTAG, "Browser.onCreate: this=" + this);
// create CookieSyncManager with current Context
CookieSyncManager.createInstance(this); //创建CookieSyncManager单例类,CookieSyncManager是用来管理存储在本地数据库的cookies数据,该类存放在Webkit中
BrowserSettings.initialize(getApplicationContext());
//用来初始化Browser中的默认设置数据,全局单例类,传递的Context为ApplicationContext
Preloader.initialize(getApplicationContext());
//创建Preloader单例类,用于处理预加载请求
}
}