学习笔记(一)Android 的简介

一. Android 系统架构


1. 应用层

  所有安装在手机上的应用程序,比如自带的联系人、电话、短信等,都是属于这一层的。

2. 应用框架层

  这一层主要提供了构建应用程序时可能用到的各种 API 。

3. 系统运行库层

1) 程序库

这里包含一些 C/C++ 库,这些库能被 Android 系统中不同的组件使用。如 SQLite 库提供了数据库的支持,OpenGL/ES 库提供了3D绘图的支持等等。

2) Android 运行库

  这里主要提供了一些核心库,能够允许开发者使用 Java语言来编写 Android应用。另外 Android运行库还包含了 Dalvik虚拟机。

4. Linux 内核层

  Android系统是基于 Linux2.6 内核的,这一层为 Android 设备的各种硬件提供了底层的驱动。比如照相机驱动、蓝牙驱动、显示驱动等等。


Android系统架构


二. Android的四大组件

1. 活动 (Activity)

  Android 应用程序的门面。

2. 服务 (Service)

  在后台默默运行。

3. 广播接收器 (Boardcast Receiver)

  允许你的应用接受来自各处的广播消息,比如电话、短信等。

4. 内容提供器 (Content Provider)

  为应用程序之间共享数据提供了可能,比如读取系统电话本中的联系人。

三. Android程序结构(主要)

1. src

  存放所有Java代码

2. gen

  自动生成,主要有一个 R.java 文件,所有 res 资源都在这里编号,通过 R.xx.xx或 @xxx查询。永远不要手动修改它。

3. res

顾名思义就是 resource,存放项目中使用到的所有图片、布局、字符串等资源。

4. AndroidManifest.xml

这是项目的配置文件,四大组件都需要在这里注册。

四. 掌握日志工具 (LogCat) 的使用

- 这是一个用来发送日志信息的 API 接口。

1. Log.v() 对应级别 verbose,最低级;
2. Log.d() 对应级别 debug,比 verbose 高一级;
3. Log.i() 对应级别 info,比 debug 高一级;
4. Log.w() 对应级别 warn,比 info 高一级;
5. Log.e() 对应级别 error,比 warn 高一级;

例如,Log.d(String tag, String msg) 方法中传入了两个参数,第一个是 tag,一般传入当前类名,主要用于对打印信息的过滤。第二个参数是 message,即想要打印的具体的内容。
Tip: 在类中声明一个常量 TAG 是一个好习惯:

private static final String TAG = "MyActivity";

然后在调用 Log 方法中使用它:

Log.v(TAG, "message");

题外话:我零基础自学了一个月 Java,看了一本《Head First Java》和一部 Mars 老师的视频,现在终于开始要学习《第一行代码Android》了,有点小激动。毕业出来工作了三年感觉到自己对化学产生了厌倦。找工作的过程中思考了人生,然后想明白了自己想要的其实不是闷头呆在实验室做实验,于是下定决心转行去互联网。其实自己从四年级就开始接触电脑,虽然大部分时间都是在玩游戏看动漫,但是如果对电脑没兴趣的话我也不会整天坐在电脑面前是吧?我现在觉得这一个月的学习过程还是有点意思。希望能坚持学下去,和书中的萌级小菜鸟一起成长!
做自己想做的事吧,做了失败你未必后悔,从没做过你肯定后悔,加油!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值