1

有没有办法从 packageinfo 运行意图?我一直在寻找,但没有找到。

我试过这样

Intent i = new Intent(); 
i.setAction(Intent.ACTION_MAIN);
i.addCategory(Intent.CATEGORY_LAUNCHER);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK |
Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
i.setComponent(new ComponentName(p.applicationInfo.packageName,p.applicationInfo.name));
startActivity(i);

但它不起作用,因为p.applicationInfo.name始终为空。

4

2 回答 2

1

以下代码使用 SDK 8.18 为我工作

假设“p”是您的 PackageInfo

ApplicationInfo appInfo = p.applicationInfo;

String packageName = appInfo.packageName;

startIntent = getPackageManager().getLaunchIntentForPackage(packageName);

if(startIntent != null){
    startActivity(startIntent);
}
于 2014-01-15T14:34:57.740 回答
0

尝试使用以下代码:

Intent i = getPackageManager().p.applicationInfo.packageName(p.applicationInfo.packageName);
startActivity(i);

i.setFlags()如果需要,您可以在开始活动之前设置任何标志 ( )。

于 2010-03-20T17:48:40.387 回答