转载请注明出处:http://blog.csdn.net/qinjuning

前言:公司最近来了很多应届实习生,看着他们充满信心但略带稚气的脸庞上,想到了去年的自己,那是的我是不是也和

现在的他们一样呢?现在的我又改变了什么?公司的给这些实习生指定的相关培训制度还是比较完善的(我可是个菜鸟)。但我反

过来想,假如是我,我会制定一个怎样的短期或者长远的计划?总结了自己学到的知识,形成了一个学习线路,希望能给予同

道中人一点儿小小帮助。

毕业8月有余,同时伴随着从事Android开发的经验的提升。仔细思量过去的工作内容,掐指算来也是少得可怜---主要维护FM收

音机模块,间或看看Lancher模块的代码。尽管这样,总的来说,在这八个月事件的学习里,我自我感觉收获还是很大的---自学了很多

Android相关方面的知识。虽然里真正的大牛还有很远的一段路程要走,自己也会坚持学习、坚持走下去。

再次,把自己学习过程中总结的一些经验总结出来,帮助那些刚刚步入Android的网友以及有了取得了一些经验但不知如何

继续前行的朋友,希望你们能够早日在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 http://115.com/file/dpnay9ug#packages.rar

kernel http://115.com/file/anqptq4l#kernel.rar

ndk http://115.com/file/c2libfmk#ndk.rar

system http://115.com/file/beh14i2o#system.rar


//Attention: 由于115网盘关闭了大众分享功能,仅仅好友之间可以共享, 各位朋友只需要加我为好友即可

// 1、打开上面链接地址; 2、添加我为好友即可;

// 我的115账号目前是允许所有人添加我为好友的。


由于我上115网络不给力,导致很多时候都耽搁了大家的期望。我申请了一个小号,希望大家能够自由下载,以后我也会把

东西都放在这个小号里的。由于这个小号是用手机号码注册的,大家也不要修改了,同时希望大家不要人肉我啊。


ID : 85699022

密码:csdnqinjuning


分享文件在我的网盘里,即可下载。


Good luck to U !






更多相关文章

  1. android SubscriptionInfo更新流程
  2. android activity 的 looper, Handler处理流程
  3. android中重要的知识点
  4. android 启动流程
  5. 一张图带你掌握Android Q上InputDispatcher事件分发流程(系统层)
  6. android中log知识总结
  7. Android基础知识大纲

随机推荐

  1. Android中LogCat工具的使用
  2. Android生成apk后防反编译
  3. android中,用SimpleAdapter创建有自己布局
  4. 4.28 context.getExternalFilesDir(null)
  5. Android怎么用onCreateOptionsMenu()创建
  6. Android生成签名文件并用其对apk文件进行
  7. 使用ndk开发android 5.0 平台错误处理(1)
  8. Android4.1输入子系统框架介绍和性能分析
  9. android 真机 安装 模拟器 DevTools Deve
  10. USB设备驱动程序学习笔记(一)