通过数据库修改快捷方式图标
来源:互联网 发布:dnf台服内部辅助源码 编辑:程序博客网 时间:2024/06/05 08:33
/packages/apps/Launcher/res/xml/default_workspace.xml中记录了系统初始化或者恢复出厂设置时桌面上图标的排列。Launcher程序第一次运行完毕以后,会在/data/data/com.android.launcher/databases/launcher.db中创建记录,里面有所有当前的桌面图标。以后每次启动只会从这里读取桌面图标。
下面简单分析一下default_workspace.xml:
default_workspace.xml中,支持的标签有:
favorite:应用程序快捷方式。
shortcut:链接,如网址,本地磁盘路径等。
search:搜索框。
clock:桌面上的钟表Widget
支持的属性有:
launcher:title,图标下面的文字,目前只支持引用,不能直接书写字符串。
launcher:icon,图标引用。
launcher:uri,链接地址。
launcher:packageName,应用程序的包名。
launcher:className,应用程序的启动类名。
launcher:screen,图标所在的屏幕编号。
launcher:x,图标在横向排列上的序号。
launcher:y,图标在纵向排列上的序号。
LauncherProvider.java里面的loadFavorites方法负责解析。
应用程序的写法,default_workspace.xml中有很多,对链接的写法却没有,我分析了一下它的解析程序,反向做出了链接快捷方式的写法,已经验证成功,希望可以帮到大家。
<shortcut
launcher:title="@string/aaa"
launcher:icon="@drawable/aaa"
launcher:uri="http://www.aaa.com"
launcher:screen="1"
launcher:x="0"
launcher:y="3" />
链接的图标内容和文字内容是从default_workspace.xml中获取到的。
应用程序的图标内容和图标下面的文字内容都是从PackageManager中获取到的。
如果Launcher启动时,应用程序的包名和类名因为某种原因没有在PackageManager中找到,桌面就不会显示它的图标。如果类名和包名找到了,但是图标没有找到,会显示Android默认的小机器人图标。
所以,要在default_workspace.xml中加入锭接时,只要写上title,icon,uri,screen,x,y这几个属性就可以了。
而要加入应用程序时,只要写上packageName,className,screen,x,y这几个属性就可以了
- 通过数据库修改快捷方式图标
- VC修改存在快捷方式图标
- VC修改快捷方式的图标
- 在Android中修改快捷方式的图标
- 通过注册表修改盘符图标
- 通过desktop.ini文件修改文件图标
- Win7 快捷方式图标消失
- windows7快捷方式图标丢失
- C# 快捷方式图标生成
- Android 创建快捷方式图标
- Android创建快捷方式图标
- 替换桌面快捷方式图标
- win7去掉快捷方式图标
- win7恢复快捷方式图标
- 如何通过注册表删除或显示快捷方式图标的小箭头?
- Unity3D通过脚本修改游戏对象图标Select Icon
- 应用程序图标丢失快捷方式没有图标怎么办
- 去除快捷方式图标小箭头
- 对于同学提问问题答案的收集
- Unity3d NGUI系列教程四(自定义Atlas,Font)
- currentStyle、runtimeStyle、getComputedStyle的区别
- Unity项目-了解协同StartCoroutine(2)
- Unity3D NGUI系列教程三
- 通过数据库修改快捷方式图标
- Android CountDownTimer倒计时简单使用
- Unity3D NGUI系列教程二
- Java 1024
- Unity3D NGUI系列教程一
- xcode6发布app的折腾
- Android UI线程和非UI线程
- EAX、ECX、EDX、EBX寄存器的作用
- hive学习路线