谨慎初始化Application

谨慎初始化Application

Android应用可以支持开启多个进程。 通常的做法是这样

123

通常我们在Application的onCreate方法中会做很多初始化操作,但是每个进程启动都需要执行到这个onCreate方法,为了避免不必要的初始化,建议按照进程(通过判断当前进程名)对应初始化.

12345678910111213141516171819202122232425262728

publicclassMyApplicationextendsApplication{privatestaticfinalStringLOGTAG="MyApplication";@OverridepublicvoidonCreate(){StringcurrentProcessName=getCurrentProcessName();Log.i(LOGTAG,"onCreate currentProcessName="+currentProcessName);super.onCreate();if(getPackageName().equals(currentProcessName)){//init for default process}elseif(currentProcessName.endsWith(":network")){//init for netowrk process}}privateStringgetCurrentProcessName(){StringcurrentProcessName="";intpid=android.os.Process.myPid();ActivityManagermanager=(ActivityManager)this.getSystemService(Context.ACTIVITY_SERVICE);for(ActivityManager.RunningAppProcessInfoprocessInfo:manager.getRunningAppProcesses()){if(processInfo.pid==pid){currentProcessName=processInfo.processName;break;}}returncurrentProcessName;}}

上面的一些知识就是关于Android中如何避免创建多余对象的总结.欢迎提出意见和观点,共同进步.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容