首页 > 代码库 > 小猪的Android入门之路 day 1

小猪的Android入门之路 day 1

小猪的Android入门之路 Day 1

Android相关背景与开发环境的搭建

------转载请注明出处:coder-pig


本节引言:


随着社会经济的发展,移动互联网的越来越热,手机APP开发显得格外火爆,

作为一名快要毕业的IT屌丝,自然要趟一趟这一浑水啦,当前主流的手机系统

IOS(苹果),Android(安卓),WinPhone(windows);WindPhone貌似没什么崛起的势头;

所以主流的就是前面的两个;作为一名屌丝学生狗,买不起Mac,仅仅有一台双核的破电脑;

仅仅能去搞android啦...只是都是说笑而已,对于两个的优劣并只是多的比較!

本系列是记录博主在安卓学习中学到的一些东西以及遇到问题的记录;

可作为学习參考或者教程查看,假设文中有什么写得不好的以及有什么好的建议;

欢迎指出,万分感激!大笑





正文:


本章学习路线图:





学习路线解析:

①对安卓相关背景知识的了解,以及安卓的平台架构

②搭建安卓开发环境,会使用Eclipse与android sudio当中一个就可以

③熟悉相应IDE的开发APP流程

④对一些术语的了解

⑤一些android流程细节的了解





Android的诞生与发展:



android系统由是Andy Rubin创建的,后来被谷歌收购了;最早的版本号是android 1.1,

而如今最新的版本号是Android L,也就是我们常说的Android 5.0,系统的命名都是以点心命名的

,比方4.4 KitKat(奇巧巧克力),同一时候由于版本号过多的问题,安卓的碎片化情况比較严重:首先是屏幕的碎片化,

不像苹果的手机一样都是一个分辨率的,开发出来不用过多地去考虑屏幕自适应的问题;

另外是使用系统的碎片化,如今市场上各个版本号都有人用,2.3,4.0,4.2...所以碎片化问题给android开发带来了

一定的麻烦!




Android系统特性与平台结构:

系统特性:


1.应用程序框架支持组建的重用与替换(app公布时遵守了框架的约定,其它app也能够使用该模块)

2.Dalvik虚拟机:专门为移动设备优化

3.集成的浏览器:开源的WebKit引擎

4.SQLite结构化的数据存储

5.优化的图形库,多媒体支持,GSM电话技术,蓝牙等

6.採用软件叠层方式构建



Android平台结构图:





框架的简单解析:


①应用程序和应用程序框架部分使用的是Java语言

②android执行时:Android核心库集 + Dalvik虚拟机

每一个app都单独地执行在单独的Dalvik虚拟机内(每一个app对于一条Dalvik进程)

③执行流程:


④Dalvik虚拟机的特点:不须要非常快的CPU计算速度和大量的内存空间;

而执行专有的.dex文件是基于寄存器实现的,依赖于linux的核心功能




开发环境的搭建:

2个中任意选择一个就能够了!进入传送门学习创建一个自己的app


①Eclpise + ADT + SDK :  传送门

②Android Studio : 传送门



熟悉IDE开发APP的流程




相关术语的解析:


Dalvik:android特有的虚拟机,和JVM不同,Dalvik虚拟机很适合在移动终端上使用!

AVD"(android virtual machine):安卓虚拟设备,就是安卓的模拟器

ADT:(android development tools)安卓开发工具

SDK:(software development kit)软件开发工具包,就是安卓系统,平台架构等的工具集合,如adb.exe

DDMS:(dalvik debug monitor service)安卓调试工具

adb:安卓调试桥,在sdk的platform-tools文件夹下,功能非常多,等下会慢慢介绍

DX工具:将.class转换成.dex文件

AAPT:(android asset packing tool),安卓资源打包工具,

R.java文件:由aapt工具依据App中的资源文件自己主动生成,能够理解为资源字典

AndroidManifest.xml:app包名 + 组件声明 + 程序兼容的最低版本号 + 所需权限等程序的配置文件



*其它杂项


①adb相关指令:

ps:下面指令须要在命令行下输入,并且要来到sdk的文件夹下的platform-tools

当然你也能够配置PATH,就直接能够用以下的adb指令了




②安卓APP程序带包&安装流程:



③android app的软件安装过程:





小猪的Android入门之路 day 1