一、引导
- Android 是一种基于 Linux 的开放源代码软件栈,为各类设备和机型而创建,作为安卓开发者,应该了解安卓平台架构及其优点,还需要了解设备文件浏览器(Device File Explorer),另外,安卓调试桥也应该了解,利用它可以进入Linux内核进行一些操作。
二、安卓平台架构简要
1、Linux 内核
- Android 平台的基础是 Linux 内核。例如,Android Runtime (ART) 依靠 Linux 内核来执行底层功能,例如线程和低层内存管理。
- 使用 Linux 内核可让 Android 利用主要安全功能,并且允许设备制造商为著名的内核开发硬件驱动程序
2、HAL抽象层
- 硬件抽象层 (HAL) 提供标准界面,向更高级别的 Java API 框架显示设备硬件功能。HAL 包含多个库模块,其中每个模块都为特定类型的硬件组件实现一个界面,例如相机或蓝牙模块。当框架 API 要求访问设备硬件时,Android 系统将为该硬件组件加载库模块。
3、原生 C/C++ 库
- 许多核心 Android 系统组件和服务(例如 ART 和 HAL)构建自原生代码,需要以 C 和 C++ 编写的原生库。
- 如果开发的是需要 C 或 C++ 代码的应用,可以使用 Android NDK 直接从原生代码访问某些原生平台库。
4、Java API 框架
- 您可通过以 Java 语言编写的 API 使用 Android OS 的整个功能集。
五、系统应用
- Android 随附一套用于电子邮件、短信、日历、互联网浏览和联系人等的核心应用
- 系统应用可用作用户的应用,以及提供开发者可从其自己的应用访问的主要功能。
三、安卓设备文件浏览
- 单击Device File Explorer
 - 就可以看到许多的安卓目录
 - permissions: 10位权限字符
- d :directory 目录;l:link 链接;-:普通文件
- r——读;w——写;x——执行
四、安卓调试
- ADB(Android Debug Bridge)工具,我们可以管理设备或手机模拟器的状态
- 查看adb.exe的位置

1、查看连接的设备
- 执行命令:adb devices

2、查看设备连接状态
- 执行命令:adb get-state
- 结果可能有三种情况:offline - 设备连接异常,device - 正常,unknown - 没有连接设备

3、查看手机日志
- 执行命令:adb logcat ,按Ctrl+C结束

4、查看所有应用包名
- 执行命令:adb shell pm list packages

五、其它指令
- Android基于Linux内核,因此在shell状态下可以使用Linux的命令。执行命令:adb shell
- 查看分辨率,执行命令:adb shell wm size
- 输出电池信息,执行命令:adb shell dumpsys battery
- 获取系统版本号,执行命令:adb shell getprop ro.build.version.release
杀死服务进程,执行命令:adb kill-server
|