先从Android的应用开发开始,等到对应用掌握的比较熟悉了,开始慢慢阅读一些Android 应用框架层的源代码,然后再渐渐往下去了解Android的JNI、Libraries、Dalvik虚拟机、HAL层、硬件驱动、Linux内核、ARM技术体系架构等,虽然近期Intel宣称要让Intel芯片支持Android系统,但在可预见的时期内,在移动设备上,ARM的优势应该还是不可撼动的。

可以先通过在开发板上构建一个自己的Android系统,了解Android系统的整体架构和启动过程,由此先对Android有一个初步的了解;接下来,学习Android的应用开发,可以先学习Android的几个主要组件、UI组件,先对Android应用开发有一个感性认识。在能够熟练搭建用户界面后,再逐渐来丰富应用的功能,例如:加上事件处理,使其能够和用户互动;加上数据存储功能;加上联网功能等。在学完应用后,在此基础上来学习游戏编程,先了解游戏设计的基本思路,然后开始从小的游戏、小的模块开始做起,到最后能完成一个类似于现在热门《捕鱼达人》这样的游戏。在掌握了这些应用层级的内容后,可以去了解如何在Android应用中通过JNI去调用C/C++的接口,再往下学习Linux的内核和驱动开发如字符设备驱动、Flash设备驱动、网络设备驱动等等;再在此基础上,去学习Android驱动开发、HAL(硬件抽象层)开发、ARM体系架构和指令等内容,这样Android开发的整个体系就都贯穿起来了。当然,因为时间有限,而底层部分内容比较庞杂,因此,在真正去做这部分工作之前,我们只需要对其基本原理有所了解,做好相关知识的储备。

最新文章

  1. 【原创】风讯DotNetCMS V1.0~V2.0 SQL注入漏洞
  2. IOS绘图——简单三角形
  3. mysql获取日期(将时间戳转换成短日期格式)
  4. ios llvm and clang build tools
  5. ArrayList和LinkedList
  6. 让Windows Server 2008 + IIS 7+ ASP.NET 支持10万并发请求(转)
  7. Asp.Net--下载文件
  8. SQL2008将服务器的数据库表数据插入到本地数据库
  9. JavaScript基本语法2
  10. jQuery与js的length属性
  11. 转:聚类、K-Means、例子、细节
  12. web框架开发-路由控制
  13. 从2PC到Paxos
  14. Photoshop怎么破解?PS怎么破解?
  15. zookeeper的原理,5分钟了解zookeeper
  16. Redis Pubsub命令用法
  17. Linux du命令详解
  18. angularjs学习第二天笔记---过滤器
  19. Maven私有仓库-使用docker部署Nexus
  20. CODE FESTIVAL 2017 qual A 题解

热门文章

  1. CentOS 7.0关闭防火墙
  2. 14.list列表
  3. off-by-one&doublefree. 看雪10月ctf2017 TSRC 第四题赛后学习
  4. PAT (Basic Level) Practise (中文)-1025. 反转链表 (25)
  5. iOS 第三方类库之MBProgressHUD
  6. simulation clock gen unit (推荐)
  7. 【linux】【网络安全】linux中怎样关闭ICMP回应功能
  8. python爬虫基础06-常见加密算法
  9. python--MySQl单表查询
  10. (转)自定义UITabBar