Android学习路线图

本文总结的一些学习线路都是针对于Java上层应用开发的。对中间层相关开发并没有涉及到。

    一、 基础篇         需要掌握的技能如下:

               1、熟练掌握基本控件以及容器控件的使用 ;


                         常用的基本控件有:Button 、TextView、EditText、ListView等


                         常用的容器控件有:FrameLayout、LinearLayout、RelativeLayout等


               2、熟练掌握相关监听器的注册和使用:


                         常用监听器有: OnClickListener、OnLongClickListener、OnItemClickListener等


               3、掌握Log的使用以及分析方法 ;


               4、掌握Activity、Service的生命周期和使用方法 ;


               5、掌握BroadcastReceiver(广播)的接受和使用   ;


               6、掌握Intent以及IntentFilter的使用   ;


               7、基本掌握数据库方面知识,包括SQLiteDatabase以及ContentProvider的使用方法

         除此之外,我们必须得掌握adb shell 的使用方法,常用功能有:adb pull 、  adb push 、 adb remount 指令等

         由于shell类同于Linux shell ,我们还得掌握基本的Linux指令等,例如cat、cd 等 。


    知识获取渠道主要为:


     Android SDK以及网上大牛的博客。

      附: 关于基础知识的介绍,国内的一些书籍质量真是相当差劲,味同嚼蜡。强烈不建议在此阶段买书籍。

       这时,您已经小有所成了,能够基本掌握Android开发了。这儿,我推荐一个手把手讲解Android项目的视频:

               zhengping老师讲解的,强烈推荐。 视频下载地址:http://www.verycd.com/topics/2847310/


     祝您一臂之力的当然还有Mars老师的视频了。

     实践出真知。这个阶段,你可以自己编写一些小Demo了,帮助自己在更深层次发展了。


        PS:我通过看了Mars老师视频后,编写了一个简易的音乐播放器Demo, 感觉挺有成就感的。  通过前面的学习,我们可以成功进入第二个阶段了。


  二、 提高篇        需要掌握的技能如下:

                 1、掌握Canvas类的使用-- 如何绘图


                 2、掌握消息通信机制---Handler相关类的使用以及原理


                 3、掌握Context类以及实现原理


                 4、掌握View树的绘制流程  。 View绘制流程很重要,掌握它就基本上掌握了Android核心之一了。


                         4.1、掌握触摸事件的分发流程--- onInterceptTouchEvent以及onTouchEvent方法流程


                         4.2、掌握相关监听器的调用机制。例如OnClickListener监听时怎么调用的?


                         4.3、能够编写自定义View以及ViewGroup


                 5、理解Binder机制----Binder机制很重要,Android的进程间通信都是靠它完成的。掌握它,才能够好的完成接下


                    来的学习。


                 6、基本掌握ActivityManagerService类的使用,主要掌握的知识点包括如下:


                          6.1、startActivity()流程,即启动一个Activity的流程  ;


                          6.2、startService()流程,即启动一个Service的流程 ;


                 7、基本掌握PackageManagerService类的使用,主要掌握的知识点包括如下:


                          7.1、开机时如何解析所有已安装应用程序的Apk包的信息


                          7.2、Intent以及IntentFilter的匹配规则以及解析过程


                 8、基本掌握View添加至窗口的过程---即WindowManagerIml 、WindowManagerService类的用法


   知识渠道:

                        必备书籍: <Android内核剖析>                           Android源代码一份


         PS: 您的个人电脑上一定得有份  Android源代码,否则何以笑傲江湖 。

  三、 进阶篇


            1、基本理解SystemServer类加载流程以及WatchDog的功能


            2、more......  

         我也还是个小菜鸟,更多的就不知道咯。希望以后能够完善起来。和大家共同成长。

      最后,我总结的一些学习知识点只是一个提纲挈领,帮助大家学习成长的点或者线。例如:我负责通讯录模块,当然得把数据库方面知识弄得一清二楚啊。不然,公司要我何用。因此大家在学习的时候,找出更适合自己的点。

有些人可能会想,工作中我用不到,学它干嘛?再次也规劝大家在工作之余,给自己充充电,多学点知识只有好的没有坏的。

      希望大家每天能进步一点,成长一点,接近心目中的那个天空更近一点。     

   前面说的博客,在此推荐两个我常去的吧:

       1、   应用方面,主要是魏祝林的csdn博客 :http://blog.csdn.net/Android_Tutor 。 但他的博客主要是以代码为主,需要自己结合源代码揣摩 。


        2、   框架方面,主要是老罗的csdn博客 : http://blog.csdn.net/Luoshengyang/ 。  但他的博客主要是以流程分析为主,  而对 流程 需要的前期准备知识介绍不足,初步看起来比较难以理解,因此,买本《Android内核剖析》是必须的,可以参考源代码仔细领悟, 强烈推荐该书籍。

    由于网络上Android源码不太好找,特此共享下Android部分源码,主要包括框架层、中间层、以及一些App等,对上层开发

和中间层开发还是很有益处的:

           源码对应目录:                            下载地址:


           frameworks             http://115.com/file/dpna22jr#frameworks.rar


           packages                [url]http://115.com/file/dpnay9ug#packages.rar[/url]


           kernel                   [url]http://115.com/file/anqptq4l#kernel.rar[/url]


           ndk                        [url]http://115.com/file/c2libfmk#ndk.rar[/url]


           system                   [url]http://115.com/file/beh14i2o#system.rar[/url]

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的 Android 学习路线: 1. Java基础知识:Android 应用程序是使用 Java 语言编写的,因此你需要学习 Java 编程语言的基础知识。 2. Android基础知识:你需要学习 Android 平台的基本架构、应用程序组件(例如 Activity、Service、BroadcastReceiver 和 ContentProvider)以及如何将它们组合在一起构建应用程序。 3. 用户界面设计:这是一个重要的方面,因为应用程序的用户界面是用户与应用程序交互的关键部分。你需要学习如何设计用户友好的界面,如何处理用户输入和如何响应不同的用户事件。 4. 数据库操作:许多 Android 应用程序都需要使用数据库来存储和检索数据。你需要学习如何在 Android 应用程序中使用 SQLite 数据库。 5. 网络编程:许多 Android 应用程序需要与网络进行通信,例如下载数据、上传数据和与远程服务器进行通信。你需要学习如何在 Android 应用程序中进行网络编程。 6. 多媒体处理:许多 Android 应用程序需要处理音频、视频和像等媒体,你需要学习如何在 Android 应用程序中处理这些媒体。 7. 第三方库:为了简化开发过程,你可以使用第三方库,例如 Retrofit、Glide 和 EventBus 等,来实现常见的功能。 8. Android Studio:Android Studio 是 Android 应用程序开发的官方 IDE,你需要学习如何使用它来构建应用程序。 以上是一个简单的 Android 学习路线,你可以根据自己的需求和兴趣来进行深入学习。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值