(一)

第一章Android

200310月,Andy Ruby等人创办了Android公司。20058月谷歌收购。

1.1 Android全貌

1.1.1 Android系统架构

1.Linux内核层:Android设备的各种硬件提供底层驱动。如:显示驱动,音频驱动,蓝牙驱动,WiFi驱动,电源管理。

2.系统运行库层:c/c++库为Android层提供了主要的特性支持。如SQLite库提供数据库的支持,OpenGL|ES库提供了3D绘图支持,Webkit库提供了浏览器内核的支持。

Android运行时库,主要提供了一些核心库,还包含了Dalvik虚拟机(5.0后改为ART运行环境)。

3.应用框架层:主要提供了构建应用程序时可能用到的各种API

4.应用层:所有安装在手机上的应用程序都是属于这一层的。

<Android基础>(一)

1.1.2 Android已发布版本(百科)

    用甜点作为它们系统版本的代号的命名方法。

  • Android milestone builds (with Astro Boy and Bender floating around in here somewhere)
  • Android 1.0(没有开发代号)
  • Android 1.1 - Petit Four
  • Android 1.5 - Cupcake
  • Android 1.6 - Donut
  • Android 2.0/2.1 - Éclair
  • Android 2.2 - Froyo
  • Android 2.3 - Gingerbread
  • Android 3.0/3.1/3.2 - Honeycomb
  • Android 4.0 - Ice Cream Sandwich
  • Android 4.1/4.2/4.3 - Jelly Bean
  • Android 4.4 - KitKat
  • Android 5.0/5.1 - LollipopAndroid L
  • Android 6.0 - MarshmallowAndroid M
  • Android 7.0 -NougatAndroid N
  • Android 8.0 -OreoAndroid O
  • Android 9.0 -Pie Android P

API等级

API等级1Android 1.0

API等级2Android 1.1 Petit Four

API等级3Android 1.5 Cupcake

API等级4Android 1.6 Donut

API等级5Android 2.0 Éclair

API等级6Android 2.0.1 Éclair

API等级7Android 2.1 Éclair

API等级8Android 2.2 - 2.2.3 Froyo

API等级9Android 2.3 - 2.3.2 Gingerbread

API等级10Android 2.3.3-2.3.7 Gingerbread

API等级11Android 3.0 Honeycomb

API等级12Android 3.1 Honeycomb

API等级13Android 3.2 Honeycomb

API等级14Android 4.0 - 4.0.2 Ice Cream Sandwich

API等级15Android 4.0.3 - 4.0.4 Ice Cream Sandwich

API等级16Android 4.1 Jelly Bean

API等级17Android 4.2 Jelly Bean

API等级18Android 4.3 Jelly Bean

API等级19Android 4.4 KitKat

API等级20Android 4.4W

API等级21Android 5.0 Lollipop

API等级22Android 5.1 Lollipop

API等级23Android 6.0 Marshmallow

API等级24Android 7.0 Nougat

API等级25Android 7.1 Nougat

API等级26Android 8.0 Oreo

API等级27Android 8.1 Oreo

API等级28Android 9.0 Pie

1.1.3 Android应用开发特色

1.四大组件:活动(Activity),服务(Service),广播接收器(Broadcast Receiver),内容提供器(Content Provider)。

2.丰富的控件系统

3SQLite数据库

4.地理位置定位

1.2 开发环境

1.2.1 工具

JDK; Android SDK; Android Studio

1.3 第一个Android项目

HelloWorldActivity

<Android基础>(一)

1.3.4分析程序

1没有在AndroidMainfest.xml注册的活动是不能使用的

<Android基础>(一)

其中

<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>

表示HelloWorldActivity是这个项目的主活动,在手机上点击应用图标,首先启动该活动。

    2.HelloWorldActivity继承AppCompatActivity(AppCompatActivityActivity的子类)onCreate()方法是一个活动被创建是必定要执行的方法。

<Android基础>(一)

    setContentView()方法给当前活动引入一个hello_world_layout布局。

    hello_world_layout.xml文件

<Android基础>(一)

1.4 日志工具

Android中的日志工具类是log(android.util.Log)

五个方法来提供打印日志。

1. Log.v(): 打印那些最为琐碎的,意义最小的日志信息。对应级别verbose,级别最低

2. Log.d(): 打印一些调试信息。对应级别debug,比verbose高一级

3. Log.i(): 打印一些比较重要的数据。对应级别info,比debug高一级。

4. Log.w(): 打印一些警告信息。对应级别warn,比info高一级。

5. Log.e(): 打印程序中的错误信息。对应级别error,比warn高一级

Eg

<Android基础>(一)

<Android基础>(一)

Log.d()方法中传入两个参数,第一个为tag,一般传入当前类名,主要用于对打印信息过滤;第二个为msg,即想要打印的具体内容。

使用Log而不使用System.out:

日志打印不可控制、打印时间无法确定、不能添加过滤器、日志没有级别区分……

<Android基础>(一)

上一篇:Android APK反编译:APKtool使用详解


下一篇:226. 翻转二叉树