好吧,从表面上看,我认为这很容易做到,但事实证明这对我来说具有挑战性。我想做的就是以编程方式启动默认的 Android 启动器并调出应用程序选择屏幕。 “应用程序选择屏幕”是指包含所有设备应用程序的屏幕,通常内置于 Android 中,通常可以通过点击设备上的“应用程序”按钮来查看,与按钮关联的图标通常是一系列矩形...我实际上并不知道这个 Activity/应用程序叫什么...所以我希望我能正确表达这一点。
我知道如何启动启动器,我使用的 Intent 如下所示:
Intent().setComponent(new ComponentName("com.android.launcher", "com.android.launcher.Launcher"))
这可以用来启动启动器,但我不知道如何调出应用程序屏幕。我使用 logcat 查看了日志,发现当我按下设备上的应用程序按钮时,我没有看到没有来指示 Activity/程序包/应用程序名称。任何人都可以为我阐明这一点吗?
我已经在谷歌上搜索了很长一段时间,但没有找到任何我可以使用的东西,诚然,这可能是因为我不知道我试图触发的功能的名称,但对于我来说我的生活也找不到!。如果有人能指出我正确的方向,我将不胜感激。非常感谢。
最佳答案
I know how to start the launcher, the intent I am using looks like this:
无法保证 com.android.launcher
存在于任何 Android 设备上,更不用说它是用户配置的“默认 Android 启动器”了。
Would anyone be able to shed any light on this for me?
设备上预装了数十种(也许数百种)启动器实现。用户可以从 Play 商店等地方下载成百上千的启动器实现。不需要为第三方应用程序提供任何方式直接驱动到“应用程序屏幕”。哎呀,有些甚至“应用程序屏幕”。
你可以看到com.android.launcher
的源代码here .这个特定的启动器很古老,“应用程序屏幕”没有单独的 Activity ,更不用说导出供第三方使用的 Activity 了。同样的道理for com.android.launcher2
.
关于android - 以编程方式启动默认的 Android 启动器并调出应用程序选择屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20749935/