【问题标题】:How to get the names of the launchers available on android?如何获取 android 上可用的启动器的名称?
【发布时间】:2013-07-02 16:48:10
【问题描述】:

所以我希望当一个活动启动时,例如:myactivity,它应该获取所有作为启动器活动的应用程序的名称(例如:apex、nova 等)并列出它们。有没有办法做到这一点? 我希望我的应用程序应该搜索它并显示可以设置为默认主页启动器的应用程序列表,就像默认应用程序管理器一样。

<action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.HOME" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.LAUNCHER" />

Default App Manager
Nova Launcher

现在我该如何做,以便在单击按钮时打开当前默认启动器的设置活动?我们可以在默认应用管理器中执行此操作,所以我知道它可能,但我无法做到。

【问题讨论】:

  • 什么是“启动器活动”?
  • 应用程序被定义为像 nova 这样的启动器。有一个名为 default app manager 的应用程序列出了定义为启动器的活动。
  • 什么是“新星”?什么是“默认应用管理器”?
  • Nova 是一个替代你的主屏幕的应用程序(即你的默认启动器)默认应用程序管理器是一个应用程序,你可以使用它设置默认值,如默认音乐播放器、默认主屏幕等跨度>

标签: android


【解决方案1】:

您可以通过执行以下操作检索已安装应用程序的列表(以 HOME 为类别):

Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
mainIntent.addCategory(Intent.CATEGORY_HOME);
List pkgAppsList = context.getPackageManager().queryIntentActivities( mainIntent, 0);

【讨论】:

  • 是的,我已经更新了我的帖子:mainIntent.addCategory(Intent.CATEGORY_HOME);就是你要找的。​​span>
  • 但我不确定您的应用是否可以设置/有权设置默认主页启动器...
  • 我已经这样做了。所以我将 pkgAppsList 定义为 listview 并显示结果,对吧?
  • 我不知道你想做什么 :) 或者你的应用应该是什么样子,但是可以,将 pkgAppsList 放在 BaseAdapter 中并在 ListView 中显示
  • 现在我该如何做,以便在单击按钮时打开当前默认启动器的设置活动?我们可以在默认应用管理器中做到这一点,所以我知道它可能,但我无法做到。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-09-23
  • 1970-01-01
  • 2014-09-23
  • 2022-08-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多