如何根据包名packageName获取程序启动的主Activity名称?

已知程序包名packageName,如何获取程序启动的主Activity,
即AndroidManifest.xml中定义为ACTION_MAIN及CATETORY_DEFAULT的Activity呢,
求解...

解决方案1:

  private void getActivities(Activity activity,String packageName){

	    Intent localIntent = new Intent("android.intent.action.MAIN",null);

	    localIntent.addCategory("android.intent.category.LAUNCHER");

	    List appList = activity.getPackageManager().queryIntentActivities(localIntent,0);

	    for (int i = 0; i < appList.size(); i++) {

			ResolveInfo resolveInfo = appList.get(i);

			String packageStr = resolveInfo.activityInfo.packageName;

			if (packageStr.equals(packageName)) {

				//这个就是你想要的那个Activity

				android.util.Log.e("", "" + resolveInfo.activityInfo.name);

				break;
			}
	    }

	  }

以上介绍了“如何根据包名packageName获取程序启动的主Activity名称?”

你可能感兴趣的:(Android开发)