安卓底层开发书籍(安卓底层开发需要什么知识)

http://www.itjxue.com  2023-02-21 10:32  来源:未知  点击次数: 

开发安卓应用软件用什么语言?

应用程序开发用java,你看api里面的源码就知道了,都是java代码,当然android底层肯定不是java写的。\x0d\x0a\x0d\x0a如果需要涉及到底层的需要调用ndk,这时就需要c/c++了。\x0d\x0a如果是游戏开发的话看游戏引擎,像cocos2d-x就是c++,unity3d的话就用c#。

《Android开发精要》epub下载在线阅读全文,求百度网盘云资源

《Android开发精要》(范怀宇)电子书网盘下载免费在线阅读

链接:

提取码: 9v4q? ?

书名:Android开发精要

作者:范怀宇

豆瓣评分:8.1

出版社:机械工业出版社

出版年份:2012-8

页数:356

内容简介:

《Android开发精要》如何才能写出贴近Android设计理念、能够更加高效和可靠运行的Android应用?通过Android的源代码去了解其底层实现细节是最重要的方法之一!然而,Android系统太过于庞大,源代码实现复杂,学习的技术门槛和时间成本都很高。有没有一种方法既能帮助开发者深入理解Android应用开发,又能不被底层大量的实现细节所羁绊,迅速掌握编写高质量Android应用所需的知识?《Android开发精要》针对这个问题给出了完美的答案!它从Android繁杂的源代码中抽取出了Android开发的“精华”和“要点”,剥离了大量琐碎的底层实现细节,进行了高度概括和总结,不仅能帮助开发者迅速从宏观上理解整个Android系统的设计理念,而且能帮助开发者迅速从微观上掌握核心知识点的原理,从而编写出高质量的Android应用。

作者简介:

范怀宇,资深Android开发工程师,毕业于清华大学,从事移动开发多年,对Android系统有颇为深入的研究,开发经验十分丰富。曾就职于网易有道,负责完成了有道词典Android版、网易掌上邮Android版、网易八方Android版等项目的开发工作,现就职于豌豆实验室 ,负责豌豆荚2.0版本的设计和开发。

《Android系统级深入开发》pdf下载在线阅读,求百度网盘云资源

《Android系统级深入开发》(韩超//梁泉)电子书网盘下载免费在线阅读

资源链接:

链接:

提取码: nx1v

书名:Android系统级深入开发

作者:韩超//梁泉

豆瓣评分:6.2

出版社:电子工业出版社

出版年份:2011-2

页数:372

内容简介:《Android系统级深入开发:移植与调试》是一本全面介绍Android系统级开发的作品,全书以移植和调试为重点。Android具有一个庞大的软件系统,任何开发者都难以掌握系统的每一个细节。因此,如何高效地理解和开发系统,就成了Android系统级别工程师面对的主要问题。《Android系统级深入开发:移植与调试》作者以实际的开发经验为基础,以软件工程思想为指导,完成了《Android系统级深入开发:移植与调试》。《Android系统级深入开发:移植与调试》介绍了从Android开源工程到一个基于实际硬件产品中的主要工作,一方面让读者清晰把握各个子系统的架构,另一方面让读者把握移植这个开发核心环节的要点。

读者对象:Linux开发人员、移动设备开发人员、Android系统框架层和底层开发人员、有意图深入学习Android的人员、手机研发的公司。

作者简介:移动系统开发资深工程师,在Android领域具有完备的知识和前沿的技术,长期从事一线开发工作。韩超是中国大陆地区较早参与Android系统开发的人员之一,也是中国大陆的Androidin(机锋网)开发社区的核心成员和重要组织者之一;也曾经引领大陆各种相关技术人员进入Android领域,并组织参与国内外的相关枝术交流。

关于学习安卓底层,懂得进

我干了3年Android sdk开发,觉得到了瓶劲没法更进一步,于是花了一年多点时间,大概摸到点门径。根据前辈的经验,Android底层完全入门需要两年。

先说下我的入门过程:

第零步,下载源码,我下的4.2的,框架层源码10G,内核2G多,ctags给框架层建的标签文件都有600M,当时让我有点震撼,用的vim+ctags+cscope来阅读,还算不错,架构挺清晰的。

第一步,我找到了一本好书《Android的设计与实现 第一卷》它讲了Android框架层的启动,初始化,服务框架初始化,Binder,消息循环,PackageManagerService,ActivityManagerService。据作者说后面会出讲UI子系统的第二卷,拭目以待。其实这本书看了几十页我就发现需要第二步的知识,否则看不下去,于是跳去第二步。

第二步,学习Linux系统编程,在看《Android的设计与实现》的时候我发现,框架层的Native部分,全是Linux编程。为了掌握这部分知识,我花了4个月学习了《Linux系统编程手册》(TLPI)这本1000多页的书,我以前是搞WIndows文件系统这块的,所以C语言还比较熟,TLPI的习题很有意思,量也比较大,坚持下来还是收获很多。

第三步,花了4个月学习了一些Linux内核的知识,看了LKD,PLKA看了一半多。越学越没底,觉得不懂得越来越多,不过这个也正常,只有靠慢慢磨,估计以后要不断的磨这块。

第四步,回头看Android源码,这次一口气看完了《Android的设计与实现 第一卷》,终于对框架层有了谱。同时真的数次把我看晕,前面看Linux内核源码都没这么晕,不断在Java层和Native层之间跳有点磨脑浆。其中我又觉得Java的基础没有打太牢,回去补了一个月的《Core Java》第八版。但是这书没有涉及UI子系统,于是又看了《Android内核剖析》

第五步,《Android内核剖析》(这本书实际上是讲框架层的,作者也是个搞嵌入式的,所以他在写框架层的时候文笔不太好,很罗嗦,不过还是有很多看点,到他后来写做ROM,玩开发板时估计是说到了他的本行,一下子遛起来了看得出还是挺有水平的,这本书知识有点旧毕竟讲的是2.3很多代码已经过时,但是作者很多点子很有参考价值)这本书讲UI子系统和按键/触摸消息处理系统还是很有分量的,尤其13章View绘制那里,结合源码研究很有收获。而后面他讲编译框架和ROM相关的东西都是挺宝贵的资料。

第六步,为了再补一下其他诸如电源管理模块等子系统的知识看了,《深入理解android》系列,个人认为这个系列看起来有点不太舒服,不过作为补充印证还是比较有价值。

第七步,《Android系统源代码情景分析》,罗升阳的源码分析大作,比《Android的设计与实现》分析得更细致,但缺点是涉及到模块比较少,选用的源码也比《Android的设计与实现》更旧一点。看完书后需要去研究作者的博客,东西挺多的,一定让你满意。

第八步,买块开发板自己玩。这步我还没走到,原因是我觉得我还差点准备知识。可能要再几个月,到时准备入块6410或者树莓派。

最后,由于我11年以前都是搞Windows这块的,所以对Linux知识不是很了解,不得已看了这么些书,如果是一直做Linux的人,很多步骤估计可以省掉了。直接上源码才是正道。

我本身做着移动GIS开发的工作,学框架层全是因为兴趣,但招聘平台Android框架层开发人员还是蛮有竞争力的有不少定制ROM,智能电视的工作都处于人才难求状态,毕竟有一定的门槛,现在各种ios培训,让奔着钱干开发的人纷纷涌入,而ios只能干sdk开发的缺点就暴露出来了,一堆新手老手,菜鸟大牛全挤在SDK开发这块,我觉得不太妙。 反观Android这边,虽然入门菜鸟没有搞ios来钱,但是可持续性很好,从sdk-》框架》驱动》内核这样干下去。干着干着发现自己渐渐变成了Linux开发者/嵌入式开发者的人也不少,新人,老手,菜鸟大牛各居其位,层次性很好。

国外有哪些关于Android的学习网站或资料或论坛

国外的Android学习网站最大资源帝Google官方——Android开发者网站。

Google官方开发者支持平台Android Developers,开发者可以找到Google关于Android设计(Design)、开发(Develop)及发布应用(Distribute)的官方说明文档。

在Develop(开发)中,分别有教程(Android Training)、API指南(API Guides)、引用(Ref-erence)、工具(Tools)四项内容。下面就对这四项内容进行简单介绍。

(1)Android Training:在这个模块中,Google针对初学者和中高级开发者分别给出初级(Get Started)和高级(Advanced Training)两个级别的教程。网站右侧都提供Demo工程下载,使开发者可以很方便地下载学习。

初级教程内容包括应用界面搭建、管理Activity生命周期、对不同移动设备进行适配等内容。高级教程则包括了大量的Android系统特性及OpenGLes使用等内容。

(2)API Guides:该模块包含了Android API说明文档,对Android中的每个功能模块进行说明。说明文档中有大量的范例代码。如果对某一个控件或某一个传感器的使用不明白.可以在这里找到答案。

(3)Reference:根据Android包结构对每一个类及类中的接13、方法进行说明。对一个Android方法的使用不是很明白时,就赶快来这里查查吧!可以使用网站右上角的搜索按钮来寻找自己所需要的文档说明。

(4)Tools:这个模块介绍了与Android开发工具使用方法。

(责任编辑:IT教学网)

更多

推荐人物新闻文章