Android技术知识Android开发程序员

【源码解析】Launcher 8.0源码(2)---Launch

2018-10-10  本文已影响11人  lonamessi

上一篇我们讲述了Launcher桌面的基本结构,接下来这一片我们来讲解一下Launcher的基础知识,包括他的一些类的用处和一些布局的介绍。

Launcher3源码涉及到的android基础知识

如果想学习Launcher就必须熟练掌握这些android基本知识,权重比例在图中都标明了。不会的可以先学习一下这些知识。


QQ图片20181010221006.png
基础知识

这里我们先介绍一下Launcher里面常用类的主要功能

默认图标配置
default_workspace.xml

我们知道当我们在启动Launcher的时候桌面会有一些已经配置好的图标,其实在第一次运行Launcher的时候会读取一个配置xml文件来进行布局(launcher/res/xml/default_workspace.xml)这个文件可以配置App的快捷方式,weight,search搜索栏等。(具体的内容可以去源码中查看,这里只贴出来一部分)
文件中的一些属性:

    <appwidget
        launcher:packageName="com.google.android.googlequicksearchbox"
        launcher:className="com.google.android.googlequicksearchbox.SearchWidgetProvider"
        launcher:screen="0"
        launcher:x="0"
        launcher:y="0"
        launcher:spanX="4"
        launcher:spanY="1" />
<favorite
        launcher:packageName="com.android.vending"
        launcher:className="com.android.vending.AssetBrowserActivity"
        launcher:screen="0"
        launcher:x="-1"
        launcher:y="-1" />

<favorite>:程序快捷键属性标签。
<appwidget>:插件
其属性有:
launcher:className:应用的类名。
launcher:packageName:该应用的包名。
launcher:screen:当前屏幕位置,0-4屏,共5屏。
launcher:x:图标X位置,左上角第一个为0,向右递增0-4共5个。
launcher:y:图标Y位置,左上角第一个为0,向下递增,0-2共3个。
launcher:spanX:在X方向上所占格数。
launcher:spanY:在Y方向上所占格数。

default_workspace_4*4.xml
543562-3291a8f4da44993a.png

接下来我们可以看到有一些这样的文件:
default_workspace_3 * 3.xml
default_workspace_4 * 4.xml
default_workspace_5 * 5.xml
default_workspace_5 * 6.xml
这些事我们默认的布局文件3 * 3,4 * 4,5 * 5,5 * 6表示桌面图标的列数和行数,可以根据屏幕的大小来进行适配选择用那一个布局,(具体适配文件是launcher/res/xml/device_profiles.xml)具体操作后面的文章会详细解释。

友情链接:Launcher3屏幕适配

基础知识就讲到这里,接下来的文章将正式进入Launcher源码的分析。

上一篇 下一篇

猜你喜欢

热点阅读