我打算为 Android 手机开发自定义启动器。我在网上搜索过,但没有找到任何有关创建“启动器”项目的有价值信息。android 应用程序需要什么才能位于 GUI(又名启动器)的顶部?
问问题
25337 次
2 回答
10
在创建自己的启动器之前,我不久前看到了这个线程。
以下是我学到的一些重要的东西:
将您的应用声明为启动器
David 已经提到了将您的应用程序确定为启动器的代码:
<category android:name="android.intent.category.HOME" />
将此添加intent-filter
到您的启动器将用于主屏幕的活动中(在 中AndroidManifest.xml
)。
启动器问题
由于启动器会一直运行,因此您需要了解活动生命周期以防止出现问题(例如这个)。
如果您希望用户(和您自己)能够不断地使用该应用程序(这就是您通常使用启动器所做的),请确保它永远不会崩溃。在崩溃的情况下,用户将被带回设备默认启动器或其他已安装的启动器。
简而言之:发射器应该是可靠的。
常见的启动器功能(用户通常期望那些)
1)应用列表/appdrawer
可以从中启动或修改所有应用程序。您可以使用packageManager
列出应用程序。
由于生成这样的列表可能需要一段时间,我建议您异步执行并将列表保存在某处以加快速度(这也是启动器所期望的^^)
2)更改启动器的一些设置
在实施这些之前,我有一些用户卡在我的启动器中^^
您可以像这样打开设备启动器设置(在 Kotlin 中):
// working in APIs newer than Lollipop
val callHomeSettingIntent = Intent(Settings.ACTION_HOME_SETTINGS)
startActivity(callHomeSettingIntent)
奖金)应用内教程
如果您的应用程序中有一些不重要的功能、启动用户从其他应用程序不知道的应用程序的方式,这可能会很有用。
它还可以减少来自用户询问如何与您的软件交互的消息。
资源:
- 我创建的最小启动器的 GitHub 可能会有所帮助:finnmglas/Launcher
于 2020-07-11T18:31:51.380 回答
9
于 2011-08-18T12:05:23.710 回答