Android - 创建自定义启动器

时间:2011-08-18 11:55:29

标签: android launcher

我打算为Android手机开发自定义启动器。我搜索过网络,但是我没有找到有关创建“启动器”项目的任何有价值的信息。 Android应用程序需要什么才能位于GUI的顶部(又称启动程序)?

2 个答案:

答案 0 :(得分:6)

嗯,首先你需要听取android.intent.category.HOME意图。以下是一些完整源代码的链接,您可以查看:

或者查看launcher plus

答案 1 :(得分:2)

我在创建自己的启动器之前看到了这个线程。
这是我学到的一些关键知识:


宣布您的应用为启动器

David已经提到了确定您的应用为启动器的那段代码:

<category android:name="android.intent.category.HOME" />

将其作为intent-filter添加到启动器将用于主屏幕的活动(在AndroidManifest.xml中)。

启动问题

由于启动程序将一直运行,因此您需要understand the activity livecycle来防止出现问题(like this one)。

如果您希望用户(和您自己)能够持续使用该应用程序(这是您通常使用启动器执行的操作),请确保它永远不会崩溃。如果出现崩溃,用户将被带回到设备的默认启动器或其他已安装的启动器。

简而言之:发射器有望可靠。

常用启动器功能(用户通常会期望这些功能)

1)应用程序/ appdrawer的列表

可以从中启动或修改所有应用程序。您可以使用packageManager列出应用。

由于生成这样的列表可能需要一段时间,因此我建议您异步执行,并将列表保存在某个地方以加快所有操作(这也是启动器^^所期望的)

2)一些用于更改启动器的设置

在实施这些^^

之前,我有一些用户被卡在启动器中

您可以这样打开设备启动器设置(在Kotlin中):

// working in APIs newer than Lollipop
val callHomeSettingIntent = Intent(Settings.ACTION_HOME_SETTINGS)
startActivity(callHomeSettingIntent)

奖金)应用内教程

如果您的应用程序中有一些不平凡的功能,例如启动用户从其他应用程序中不知道的应用程序的方式,这可能很有用。

它还使您减少了来自用户的询问如何与您的软件进行交互的消息。


资源: