----------------------------------- Android 编程基础
1
封面
----------------------------------- Android 编程基础
2
Android
Android
Android
Android 模拟器
模拟器参数
参数格式
option 选项
emulator [option] [-qemu args]
-sysdir <dir>
为模拟器在 <dir> 目录中搜索系统硬盘镜像
-system <file>
为模拟器从 <file> 文件中读取初始化系统镜像
-datadir <dir>
设置用户数据写入的目录
-kernel <file>
为模拟器设置使用指定的模拟器内核
-ramdisk <file>
设置内存 RAM 镜像文件 ( 默认为 <system>/ramdisk.img)
-image <file>
废弃,使用 -system <file> 替代
-init-data <file>
设置初始化数据镜像 ( 默认为 <system>/userdata.img)
-initdata <file>
和 "-init-data <file>" 使用方法一致
-data <file>
设置数据镜像 ( 默认为 <datadir>/userdata-qemu.img)
-partition-size <size>
system/data 分区容量大小 (MB)
-cache <file>
设置模拟器缓存分区镜像 ( 默认为 零时文件 )
-no-cache
禁用缓存分区
-nocache
与 "-no-cache" 使用方法相同
-sdcard <file>
指定模拟器 SDCard 镜像文件 ( 默认为 <system>/sdcard.img)
-wipe-data
清除并重置用户数据镜像 ( 从 initdata 拷贝 )
-avd <name>
指定模拟器使用 Android 虚拟设备
-skindir <dir>
设置模拟器皮肤 在 <dir> 目录中搜索皮肤 ( 默认为 <system>/skins 目录 )
-skin <name>
选择使用给定的皮肤
-no-skin
不适用任何模拟器皮肤
-noskin
使用方法与 "-no-skin" 相同
-memory <size>
物理 RAM 内存大小 (MB)
-netspeed <speed>
设置最大网络下载、上传速度
-netdelay <delay>
网络时延模拟
-netfast
禁用网络形态
-tarce <name>
代码配置可用
-show-kernel
显示内核信息
-shell
在当前终端中使用根 Shell 命令
-no-jni
Dalvik 运行时禁用 JNI 检测
-nojni
使用方法与 "-no-jni" 相同
-logcat <tag>
输出给定 tag 的 Logcat 信息
----------------------------------- Android 编程基础
3
-no-audio
禁用音频支持
-noaudio
与 "-no-audio" 用法相同
-audio <backend>
使用指定的音频 backend
-audio-in <backend>
使用指定的输入音频 backend
-audoi-out <backend>
使用指定的输出音频 backend
-raw-keys
禁用 Unicode 键盘翻转图
-radio
重定向无线模式接口到个性化设备
-port <port>
设置控制台使用的 TCP 端口
-ports <consoleport>,<adbport>
设置控制台使用的 TCP 端口和 ADB 调试桥使用的 TCP 端口
-onion <image>
在屏幕上层使用覆盖 PNG 图片
-onion-alpha <%age>
指定上层皮肤半透明度
-onion-rotation 0|1|2|3
指定上层皮肤旋转
-scale <scale>
调节模拟器窗口尺寸 ( 三种: 1.0-3.0 、 dpi 、 auto)
-dpi-device <dpi>
设置设备的 resolution (dpi 单位 ) ( 默认 165)
-http-proxy <proxy>
通过一个 HTTP 或 HTTPS 代理来创建 TCP 连接
-timezone <timezone>
使用给定的时区,而不是主机默认的
-dns-server <server>
在模拟系统上使用给定的 DNS 服务
-cpu-delay <cpudelay>
调节 CUP 模拟
-no-boot-anim
禁用动画来快速启动
-no-window
禁用图形化窗口显示
-version
显示模拟器版本号
-report-console <socket>
向远程 socket 报告控制台端口
-gps <device>
重定向 GPS 导航到个性化设备
-keyset <name>
指定按键设置文件名
-shell-serial <device>
根 shell 的个性化设备
-old-system
支持旧版本 (pre 1.4) 系统镜像
-tcpdump <file>
把网络数据包捕获到文件中
-bootchart <timeout>
bootcharting 可用
-qemu args....
向 qemu 传递参数
-qemu -h
显示 qemu 帮助
-verbose
和 "-debug-init" 相同
-debug <tags>
可用、禁用调试信息
-debug-<tag>
使指定的调试信息可用
-debug-no-<tag>
禁用指定的调试信息
-help
打印出该帮助文档
-help-<option>
打印出指定 option 的帮助文档
-help-disk-images
关于硬盘镜像帮助
-help-keys
支持按钮捆绑 ( 手机快捷键 )
-help-debug-tags
显示出 -debug <tag> 命令中的 tag 可选值
-help-char-devices
个性化设备说明
-help-environment
环境变量
-help-keyset-file
指定按键绑定设置文件
-help-virtula-device
虚拟设备管理
----------------------------------- Android 编程基础
4
-help-sdk-images
当使用 SDK 时关于硬盘镜像的信息
-help-build-images
当构建 Android 时,关于硬盘镜像的信息
-help-all
打印出所有帮助
----------------------------------- Android 编程基础
5
进程:
在 Android 中,进程完全是应用程序的实现细节,不是用户一般想象的那样。
它们的用途很简单:
� 通过把不信任或是不稳定的代码放到其他进程中来提高稳定性或是安全性
� 通过在相同的进程中运行多个 .apk 代码来减少消耗
� 通过把重量级代码放入一个分开的进程中来帮助系统管理资源。该分开的进程可以被应用程序的其他 部
分单独地杀死
� 如果两个没有共享相同的用户 ID 的 .apk 试图在相同的进程中运行,这将不被允许,并且系统会为每一
个 apk 程序创建不同的进程会
线程
� Android 让一个应用程序在单独的线程中,指导它创建自己的线程
� 应用程序组件( Activity 、 service 、 broadcast receiver )所有都在理想的主线程中实例化
� 没有一个组件应该执行长时间或是阻塞操作 ( 例如网络呼叫或是计算循环 ) 当被系统调用时,这将中断所
有在该进程的其他组件
� 你可以创建一个新的线程来执行长期操作