目录安卓开发需要学习什么 安卓开发需要学习什么 如何学习安卓手机游戏开发 学习安卓开发需要什么基础? 想学习安卓的开发需要学习什么编程语言
学习分三个阶段:
1,Android基础阶段:架构特性(JAVA/C) Market/应用程序组件 环境搭建与部署/打包与发布 AVD/DDMS/AAPT 调试与测试 相关资源访问/资源制作 Activity/Service/Broadcast Receiver/Content Provider/原理(生命周期)及深层实现
2,Android进阶初级:组件搜或Widget/ 菜单Menu/ 布局Layout 详解 Xml解析(Pull/Dom/Sax)/JNI 解析SQL数据库原理,。
SQLite /SharedPreferences/File详解 多媒体Audio/Video/Camera 详解
3,Android进阶高级:蓝牙/WIFI SMS/MMS 应用实现 深层次解析GPS原理。
实现LocationManager/LocationProvider 进行定位/跟踪/查找/趋近警告以及Geocoder正逆向编解码等技术细节 2D图形库(Graphics/View)详解 SDCARD/传感器/手势 应用实现
扩展资料:
知识体系
1、Unix/Linux技术:基本命令,Linux下的开发环境
2、企业级数据库技术:SQL语言、SQL语句调优、Oracle数据库技术
3、Java 语言核心技术:Java语言基础、Java面向对象编程、JDK核心API、Java集合框架、Java网络编 程、JavaI/O编程、Java多线程编程、Java异常机制、Java安全、JDBC、XML
4、工程和设计模丛宴式:工程概述、配置管理及SVN、UML、基本设计模式
5、Android应用开发基础:Android开发、Eclipse+ADT开发环境、AVD及传感模拟器调试、Android核心组件、Android常用组件、Android高级组件、文件及网络访问、SQLite数据库编程、后台服务编程
6、互联网核心技术: HTML、CSS、JavaScript、JQuery、Ajax应用
7、Android高级应用开发:音频\\摄像头、互联网应用、GPS和位置服务、Google Map、2D\3D绘制、传感器开发、游戏开发、电话及SMS服务、网络\Bluetooth\Wi-Fi等。
8、Android级开发:移植、驱动世郑伍、NDK(C方向)。
9、JavaEE核心技术:Servlet核心技术、JSP核心技术、Struts、Spring、Hibernate框架。
参考资料:---android开发
一:JavaSE编程
Java是一种面向对象的开发语言,Android操作的应用层使用Java语言来开发,所以要想进行Android开发必须有良好的Java基础。这一阶段的学习,要牢固掌握Java中的基本语法,掌握面向对象的程序设计思想,及开发的使用。之后学习常用类,多线程等高级特性,学习Java网络编程,了解网络通讯结构,掌握数据库语言及JDBC对数据库的访问,了解数据结构与算法,设计模式,项目开发的使用等内容。为后续的学习打一夯实的基础。
二:Android基础应用开发
这一阶段的学习主要是掌握Android的架构,熟悉整个android开发环境的搭建,以及的常用命令和的使用,熟练掌握Andoid的UI开发,包括使用标准控件,以及自定义各式各样的UI控件,配合动画部分的使用,让自己UI设计更加炫丽更加吸引。最后在自己的应用中植入广告,发布到Market中,享受挣钱的乐趣。
三:Android核心组件开发
精通Android应用开发核心组件的使用,包括Acitivity窗口活动管理;连接各个组件起到通讯作用的Intent信使;存在于服务端不可见的Service组件;为数据提供共享的;之后要掌握Andorid中很实用的数据存储,以及复习Java中御兆的网络技术,并将它结合到android的开发当中,特别是常用的http通信,以及XML,Json数据的解析。中间通过不同项目让我们去强化该部分的知识。
四:Android深入开发
通过前面的三个阶段的学习,这一阶段主要是把前面的内容作为基础,结合一些实际的应用,让Android开发更加多样化,当然腊搜需要一些练习了,不妨可以尝试一下多媒体方面,如:音播放,照相机,闹钟等;常用设备方面,如:GPS,重力传感器,指南针等;还有基本的Android图形开发,绘制自己的View部件以镇局租及通过Bitmap对图片作一些处理。然后在此基础之上,学习高级的游戏开发引擎,2D,3D的图形处理。
1、首先要有Java基础
安卓是基于Java的,所以想要从事android开发相关工作一定要先有一定的Java基础知识,这里的Java基础主要包括两方面:JavaSE基础和JavaWeb开发基础。
2、JavaSE基础
JavaSE是整个Java的核巧或心,其他所有的Java相关知识点,都是在JavaSE的基础上进行的扩充而已。所以对JavaSE的学习,需要祥亮牢固掌握Java的基本语法、理解面向对象的一些概念、Java异常、集合框架、JavaI/O,反射、泛型和多线程以及网络编程等知识。
3、JavaWeb开发
JavaWeb的主要内容包括:
Java解析XML文件DOM4J、MySql数据库的应用、多表连接查询的应用、Jsp和Servlet应用、Http协议解析、Tomcat服务器的应用配置、WebService服务配置应用。
4、Android基础
有了Java基础之后还要学习一些android开发孝宴伍的基础知识,包括学Android的基本控件开发和使用、高级控件的使用,掌握布局和自定义控件、Android的数据存储方法,Android的图形编程技术,2D图形的编程,图像的旋转、动画框架等。
5、android游戏编程知识
android开发也分为很多方面,所以从事android游戏开发就要学习一些安卓游戏开发方面的专业知识,包括Android游戏开发概述,SurfaceView的使用方法,物理小球技术碰撞检测技术,游戏引擎基础概念,Cocoa2d-Android引擎使用方法,OpenGLES使用方法,图片、文字和背景音乐等资源的使用方法。
拓展资料
关于大型游戏的开发:
大型游戏(cs已经有些过时了)魔兽世界,星际等等还有国内的剑侠情缘,这类游戏都是大型游戏。开发它们肯定不是一个人能完成的,一般的大型游戏开发绝不是用某种语言这么单纯的问题。
一个大型游戏的开发需要庞大的团队使用各种各样的语言和来完成。总结一下主要有C/C,汇编语言,着色器语言,脚本语言,高效的开发语言C#或Java。
开发游戏我们经常听到的是游戏引擎,一个游戏引擎决定一个游戏最基本的东西操作和效果,那么一般的游戏开发架构从底到顶一般是DirectX(Windows)——游戏引擎——游戏。DirectX可是大名鼎鼎相当于所有显卡的一个统一接口,为游戏提供一个利用硬件渲染的编程模型,但DirectX接口为了追求高性能功能非常简单基本的绘图功能,不利于游戏的高效开发。
此时就需要根据游戏特点对其进行适当的取舍和封装,实现一组更高抽象的游戏开发接口和框架,可以理解成游戏引擎中的图形引擎。这部分的开发一般使用的语言是C/C和少量的汇编语言。
我干了3年Androidsdk开发,觉得到了瓶劲没法更进一步,于是誉信花了一年多点时间,大概摸到点门径。根据前辈的经验,Android底层完全入门需要两年。
先说下我的入门过程:
第零步,源码,我下的4.2的,框架层源码10G,内核2G多,ctags给框架层建的标签文件都有600M,当时让我有点震撼,用的vimctagscscope来阅读,还算不错,架构挺清晰的。
第一步,我找到了一本好书《Android的设计与实现第一卷》它讲了Android框架层的启动,初始化,服务框架初始化,Binder,消息循环。据作者说后面会出讲UI子的第二卷,拭目以待。其实这本书看了几十页我就发现需要第二步的知识,否则看不下去,于是跳去第二步。
第二步,学习Linux编程,在看《Android的设计与实现》的时候我发现,框架层的Native部分,全是Linux编程。为了掌握这部分知识,我花了4个月学习了《Linux编程手册》(TLPI)这本1000多页的书,我以前是搞WIndows文件这块的,所以C语言还比较熟,TLPI的习题很有意思,量也比较大,坚持下来还是收获很多。
第三步,花了4个月学习了一些Linux内核的知识,看了LKD,PLKA看了一半多。越学越没底,觉得不懂得越来越多,不过这个也正常,只有靠慢慢磨,估计以后要不断的磨这块。
第四步,回头看Android源码,这次一口气看完了《Android的设计与实现第一卷》,终于对框架层有了谱。同时真的数次把我看晕,前面看Linux内核源码都没这么晕,不断在Java层和Native层之间跳有点磨脑浆。其中我又觉得Java的基础没有打太牢,回去补了一个月的《CoreJava》第八版。但是这书没有涉及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开发者/嵌入式开发者的人也不少,新人,老手,菜鸟大牛各居其位,层次性很好。
需要有一定的C语拦孙言、JAVA基础,计算机专业的相对来说比较有优势一点,计算机专业毕业的学过一些c语言还有JAVA,有这些基础的话学起来比较容易些,没有基础也没有关系,可以报零基础脱产班,开课之前可以提前在学习乱镇一下基础知识
学安卓开发课程初级阶段简陪链是安卓开发课程的基础,就是C语言、JAVA基础
后边的应用程序部分,大部分时间是在做项目