android application对象多次实例化

       android application 这个对象可能会被多次实例化, 这种情况在使用android:process元素的时候就会出现. 

其根本的原因是新开启的进程需要一个application对象服务4大组件.

  下面给出一段获得当前进程的名称的代码, 通过它, 就可以判断是否运行在主进程了。

/**
	返回进程的名称, 如果是主进程, 则返回package name
*/
public static String getCurProcessName(Context context) {
	int pid = Process.myPid();
	ActivityManager mActivityManager = (ActivityManager)context.getSystemService("activity");
	Iterator iter = mActivityManager.getRunningAppProcesses().iterator();

	RunningAppProcessInfo appProcess;
	do {
		if(!iter.hasNext()) {
			return null;
		}

		appProcess = (RunningAppProcessInfo)iter.next();
	} while(appProcess.pid != pid);

	return appProcess.processName;
}

  

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。