好的,从表面上看,我认为这样做相当容易,但这对我来说很有挑战性。我想做的就是以编程方式启动默认的Android启动器并显示应用程序选择屏幕。通过“应用程序选择屏幕”,我指的是通常内置于Android中的所有设备应用程序的屏幕,通常可以通过点击设备上的“应用程序”按钮看到,与按钮关联的图标通常是一系列矩形......我实际上并不知道这个活动/应用程序的名称是什么......所以我希望我能正确地阐述这个。
我知道如何启动启动器,我使用的意图如下:
Intent().setComponent(new ComponentName("com.android.launcher", "com.android.launcher.Launcher"))
这可用于启动启动器,但我不知道如何打开应用程序屏幕。我使用logcat查看了日志,发现当我按下设备上的应用程序按钮时,我看到无表示活动/包/应用程序名称。有人能为我揭开这一点吗?
我已经谷歌搜索了很长一段时间并且没有找到任何我可以使用的东西,这无可否认可能是因为我不知道我试图触发的功能的名称,但对于我的生活我也找不到!。如果有人能指出我正确的方向,我会非常感激。非常感谢。
答案 0 :(得分:2)
我知道如何启动启动器,我使用的意图如下:
无法保证任何Android设备上都存在com.android.launcher
,更不用说它是用户配置的“默认Android启动器”。
有人能为我揭开这一点吗?
设备上预装了几十个,也许是几百个启动器实现。有数百甚至数千个启动器实现,用户可以从Play商店等地方下载。无需为第三方应用程序直接驱动“应用程序屏幕”提供任何方法。哎呀,有些人甚至不会拥有“应用程序屏幕”。
您可以看到com.android.launcher
here的源代码。这个特殊的启动器很古老,“应用程序屏幕”没有单独的活动,更不用说出口供第三方使用的活动了。这同样适用for com.android.launcher2
。