安卓桌面应用本质上是一个自定义启动器,如果需要将你的APP设置为桌面(启动程序),在轻舟安卓开发中实现该功能极其简单,只需要自定义修改清单文件(AndroidManifest.xml)即可,修改 activity 节点中intent-filter 节点,详细修改请参考本贴附件例程: 工程配置/AndroidManifest/自定义修改清单文件 的内容。
修改后,编译项目并安装到模拟器或手机中,长按设备 HOME 键系统会弹出 “选择桌面” 的对话框,
选择当前APP作为 Launcher 并勾选 “始终使用”,即可替代系统桌面。
一般系统桌面还会涉及到壁纸设置以及列出设备中已经安装的应用,本例程以此作为简单演示。
部分代码:
事件 窗口创建完毕()
' 设置壁纸作为背景
获取系统壁纸并作为背景()
' 初始化加载已安装的应用包名
获取已安装应用列表()
结束 事件
引用 android.app.WallpaperManager
引用 android.graphics.drawable.Drawable
' 获取系统壁纸作为桌面APP背景
函数 获取系统壁纸并作为背景()
变量 wm 为 WallpaperManager
wm = WallpaperManager.getInstance(取应用上下文())
变量 壁纸图片 为 Drawable
壁纸图片 = wm.getDrawable()
取应用上下文().getWindow().setBackgroundDrawable(壁纸图片)
结束 函数
' 获取系统中已经安装的应用列表,注意:
' 需要在清单文件中添加其权限:<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />
函数 获取已安装应用列表()
文本列表框1.文本颜色 = "#ffffff"
变量 已安装应用包名 = 取所有应用包名()
' 遍历取出应用名称,添加到列表框中
变量循环(索引 = 0,取数组成员数(已安装应用包名),1)
变量 应用包名 为 文本型
应用包名 = 已安装应用包名[索引]
文本列表框1.添加项目带标记(获取应用名称By包名(应用包名),应用包名)
结束循环
结束 函数
事件 文本列表框1.项目被单击(源对象 为 文本列表框,项目索引 为 整数型)
启动应用(到文本(文本列表框1.取项目标记(项目索引)))
结束 事件
函数 获取应用名称By包名(包名 为 文本型) 为 文本型
异常捕获首
返回 取应用上下文().getPackageManager().getApplicationLabel(取应用上下文().getPackageManager().getApplicationInfo(包名, 0)).toString()
异常被捕获(异常信息 为 对象)
调试输出("异常信息:" + 异常信息)
返回 ""
异常捕获尾
结束 函数运行效果截图:
