【问题标题】:How do I launch the recent apps programmatically?如何以编程方式启动最近的应用程序?
【发布时间】:2017-11-14 12:37:41
【问题描述】:
  • 谁能帮帮我: 如果我的应用程序是最后一个应用程序打开的,我已经把这段代码工作得很好。但是如果我在我的应用之后打开其他应用,她就会留在后台。

  • 如果有人能告诉我如何运行我的应用程序,就好像它是最后一个打开的应用程序或其他类似的东西。

代码:

public void Show_App(String packageName){

this.activity.getWindow().addFlags(
        WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON|
        WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD|
        WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED|
        WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);


Intent startIntent = 
        context.getPackageManager().getLaunchIntentForPackage(packageName);
startIntent.setFlags(           
                Intent.FLAG_ACTIVITY_REORDER_TO_FRONT |
                Intent.FLAG_ACTIVITY_NEW_TASK |
                Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED
);
this.context.startActivity(startIntent);
}

【问题讨论】:

  • 错误是什么?
  • 没有错误,但我需要在我的代码中添加一些内容以始终在顶部运行我的应用程序

标签: java android background launch


【解决方案1】:
private void getRecentAppList() {

    ActivityManager mActivityManager = (ActivityManager) mContext.getSystemService(Context.ACTIVITY_SERVICE);
    List<ActivityManager.RecentTaskInfo> recentTasks = mActivityManager.getRecentTasks(10, 0);
    for (ActivityManager.RecentTaskInfo taskInfo : recentTasks) {
String packagename = task.baseIntent.getComponent().getPackageName();
        Intent intent = taskInfo.baseIntent;
        ResolveInfo resolveInfo = mPackageManager.resolveActivity(intent, 0);
        ActivityInfo activityInfo = resolveInfo.activityInfo;
    } }

您没有关闭或清除最近列表中的应用,而不是获得最近的应用午餐列表。

【讨论】:

    猜你喜欢
    • 2013-08-17
    • 1970-01-01
    • 2018-11-17
    • 1970-01-01
    • 1970-01-01
    • 2011-03-21
    • 2012-11-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多