您的位置:首页 > 移动开发

Android Application-Telephony-RIL 2 PhoneApp

2014-12-29 16:53 267 查看
系统环境:Ubuntu14.04 / Eclipse + adt

目标环境:Android4.2.2

/**
* Top-level Application class for the Phone app.
* 能从注释看出来PhoneApp是整个电话应用的核心类
*/
public class PhoneApp extends Application {
PhoneGlobals mPhoneGlobals;

public PhoneApp() { //空的构造方法,也没有人调用
}

@Override
public void onCreate() {
if (UserHandle.myUserId() == 0) { // 必须是primary user才能初始化phoneGlobals
// We are running as the primary user, so should bring up the
// global phone state.
// PhoneApp的核心作用,持有一个PhoneGlobals类的实例,构造器
// 将context传入。new的过程中只是执行了父类的构造方法,并将自己保存为sMe
mPhoneGlobals = new PhoneGlobals(this);
// 真正有用的是onCreate,其实在phone对象不存在时新建一个phone对象
// 另外几个重要的framework层对象也在这里创建 mPhoneGlobals.onCreate();
}
}
// 好像是用作屏幕旋转等时候的配置变化,这里忽略它的存在,主要研究的是流程
@Override public void onConfigurationChanged(Configuration newConfig) {
if (mPhoneGlobals != null) {
mPhoneGlobals.onConfigurationChanged(newConfig);
}
super.onConfigurationChanged(newConfig);
}
}



                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: