admin 管理员组文章数量: 1184232
2024年3月11日发(作者:汇编指令sto)
定制你自己的桌面--- launcher小觑
launcher也就是我们的Home,可以简单地把它理解为一个简化的linux GUI。作为
一个GUI它首先必须完成它最本分的功能,就是它必须能提供对所有应用程序
(CATEGORY_LAUNCHER)的映射;不过作为一个 GUI,它除了做好本分之外还必须是符
合大众审美的美女(wallpaper);另外还必须具有良好的交互性,没有良好的交互性就像你
对一位美女殷勤了半天,她却直接对无视,那结果是比较糟糕的~~
所谓兵马未动,粮草先行,在了解launcher的细节之前,我们首先需要完成对一些知
识的扫盲。当然这些知识我们都可以在SDK guide大叔那边找到,俺可以很负责任地告诉
大家,如果你把SDK guide大叔的三板斧都学会了,APK你基本就处于无敌状态了,绝
对护甲+10000,最起码基础知识是够了,其他比的就是创意了:
1、必须比较完整地了解APK的4个部件,尤其是Activity,现在可以简单地理解
Activity是一个应用程序的窗口。
2、必须了解UI的那部分内容,这部分内容是比较多的,English一般的我看得是比
较抑郁的,但如果你想设计一个符合自己审美要求的美女或者帅哥是必须得得了解的,不
需要一下能完全理解,但至少出了问题你知道去哪部分查~~
3、Resources那部分内容可以当百科全书查
4、intent那部分内容也是需要了解比较详细的,他是和应用沟通的渠道,大家可以
参考一下小斯大虾写的文档。
5、manifest必须了解,security可以看看
6、Graphic部分的内容是给需要更高品味的GUI设计提供的,虽然它可能主要用在
游戏上面,但我觉得如果要作出够酷的GUI肯定是需要2d,3d引擎的。
7、AppWidget可以作为了解,用的时候再翻阅
各位路过的大虾们肯定被这么多的粮草给直接雷倒了,其实需要我们详细掌握的是1
和2,其他的都可以当作百科全书,但是如果能仔细地看透了那是最好了。
好,万事俱备只欠东风了,我们首先来看看这个Home是在啥时候由谁来启动的。这
部分知识可以跳过,但是理解一下是好的,你可以了解一个APK进程是如何怀胎十月之后
诞生的。可能下面说到的词汇有些生涩,所以建议先看看Android Anatomy and
。
Linux kernel启动以后会通过App_main进程来初始化android Runtime Java运
行环境,而zygote是android的第一个进程。所有的android的应用以及大部分系统服
务都是通过zygote fork出来的子进程(我现在看到的只有native的service manager不
是由zygote fork出来的)。在system server中启动的若干系统服务中与我们启动进程相
关的就是Acitivity Manager。
当systerm server启动好所有服务以后,系统就进入”system ready”状态,这个
时候Activity Manager就登场了。Activity Manager光看代码行就知道是一个重量级的
服务,它主要管理Activity之间的跳转,以及进程的生命周期。当Activity Manager发现
系统已经启动好以后它就会发出一个intent:
版权声明:本文标题:Android launcher开发 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1710132025a558810.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论