在Android的应用程序开发中,通常使用的是 Java 语言,除了要熟悉 Java 语言的基础外,还需要了解 Android 提供的 Java 扩展功能。
一、重要包描述
Android.app:提供高层的程序模型、提供基本的运行环境。
Android.content:包含对各种的设备上的数据进行访问和发布的类。
Android.database:通过内容提供者浏览和操作数据库。
Android.graphics:底层的图形库,包含画布、颜色过滤、点、矩形,可以将它们直接绘制到屏幕上。
Android.location:定位和服务的相关类。
Android.media:提供了一些管理音频视频的媒体接口的相关类。
Android.net提供了关于网络访问的类,超过通常的 java.net.* 接口。
Android.os:提供了系统服务,消息传输, IPC 机制。
Android.opengl:提供了 OpenGL 的工具。
Android.provider:提供类访问 Android 的内容提供者。
Android.telephony:提供与拨打电话相关的 API 交互
Android.view:提供基本的用户界面接口框架。
Android.util:涉及工具性的方法,例如时间日期型的操作。
Android.webkit:默认浏览器操作接口。
Android.widget:包含各种 U 元素,在应用程序的屏幕中使用。
二、Android的相关文件类型概述
Java文件 --- 应用程序源文件
Android的应用必须使用 Java 来开发。
Class文件 ---Java 编译后的目标文件。
不想J2SE,java 编译成 class 文件就直接可以运行, Android 平台上的 class 文件不能直接在 Android 平台上运行。由于 google 使用了自己的 Dalvik 来运行应用,所以这里的 class 也肯定不能在 Android Dalvik 上运行, Android 的 class 文件实际上只是编译过程的中间目标文件,需要链接成 Dex 文件才能运行在 Dalvik 上。
Dex文件 ---Android 平台上的可执行文件。
Dalvik执行的并非是 Java 字节码,而是另一种字节码: dex 格式的字节码( Java 字节码 ->dex 字节码)。 Dalvik 可以执行许多 VM 而不会占用太多的 Resource.
APK 文件 ---Android 上的安装文件
APK是 Android 安装包的扩展名,一个 Android 安装包包含了与某个应用程序相关的所有文件, APK 文件将 AndroidMainfest.xml 文件、应用程序代码( DEX )文件、资源文件和其他文件打成一个压缩包。一个工程只能打进一个 .apk 文件。
三、Android ADB 工具的使用
ADB是 Android 提供的一个通用调试工具,借助这个工具,我们管理手机模拟器的状态。
1.ADB功能操作
快速更新设备或手机模拟器的代码,如应用或Android 系统升级。
在设备上运行shell 命令
管理设备或手机模拟器上的预定接口
在设备或手机模拟器上复制、粘贴文件
2.ADB的常用操作
安装应用到模拟器
adb install app.apk
Android没有提供一个卸载应用的命令,只能手动删除:
Adb shell
Cd data/app
Rm.app.apk
进入设备或模拟器的shell
Adb shell
通过以上命令,可以进入设备或模拟器的shell 环境中,在这个 shell 中,你可以执行各种 Linux 的命令,另外如果只想执行一条 shell 命令,可以采用以下方式:
Adb shell[command]
如:
Adb shell emesg
会打印出内核的调试信息
发布端口
可以设置任意的端口号,作为主机箱模拟器或设备的请求端口。如:
Adb forward tcp : 5555 tcp : 8000
复制文件
复制一个文件或目录到设备或模拟器上;
Adb push
如:
Adb push test.txt/tmp/test.txt
Adb pull
如:
Adb pull /Android/lib/libwebcore.os
搜索/ 等待模拟器、设备实例
取得当前运行的模拟器、设备的实例列表及每个实例的状态或等待正在运行的设备
Adb devices
Adb wait-for-device
查看debug 报告
Adb bugreport
记录无线通信日志
无线通信日志非常多,在运行时没必要记录,可以通过命令设置记录
Adb shell
Logcat -b radio
获取设备ID 和序列号
Adb get-product
Adb get-serialno
访问数据库SQLite3
Adb shell
Sqlite3