Android 以编程方式恢复其他应用程序
如何从“最近使用的应用”选项卡中恢复其他应用?例如,如果我们编写了一个启动器应用程序,并且不希望每次都启动应用程序的主要活动 我试过这样的方法:Android 以编程方式恢复其他应用程序,android,android-intent,launcher,Android,Android Intent,Launcher,如何从“最近使用的应用”选项卡中恢复其他应用?例如,如果我们编写了一个启动器应用程序,并且不希望每次都启动应用程序的主要活动 我试过这样的方法: PackageManager manager = context.getPackageManager(); Intent intent = manager.getLaunchIntentForPackage(packageName); if (intent == null) { Toast.ma
PackageManager manager = context.getPackageManager();
Intent intent = manager.getLaunchIntentForPackage(packageName);
if (intent == null) {
Toast.makeText(context, "app does not exist", Toast.LENGTH_SHORT).show();
return;
}
intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
context.startActivity(intent);
但它不起作用-我应该设置什么标志
解决方案:
嗯。我只需更改此部分:
intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
context.startActivity(intent);
为此:
intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
context.startActivity(intent);
context.finishAffinity();
试试这个
Intent launchAppIntent = context.getPackageManager().getLaunchIntentForPackage(packageName);
if (launchAppIntent != null) {
launchAppIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
context.startActivity(launchAppIntent);
finishAffinity();
}
它可以正确地打开想要的活动,但在我的应用程序中(在任务管理器中,我可以看到两个类似的视图-从应用程序A和从我的应用程序),我想返回此应用程序Aadd finishafinity();启动后触觉();不幸的是,它没有改变什么。