:Android程序的调试技巧

来源:百度文库 编辑:九乡新闻网 时间:2024/04/27 03:38:33

1. Android adb shell 启动java程序
(1) 进入shell

   C:\Documents and Settings\mawenjian>adb shell

(2) 看一下命令的帮助

# am -help
am -help
Error: Unknown command: -help
usage: am [start|instrument]
am start [-a ] [-d ] [-t ]
[-c [-c ] ...]
[-e [-e ...]
[-n ] [-D] []
am instrument [-e ] [-p ]
[-w]

(3) 好了,试一下启动浏览器 
# am start -n com.google.android.browser/com.google.android.browser.BrowserActivity
am start -n com.google.android.browser/com.google.android.browser.BrowserActivity
Starting: Intent { comp={com.google.android.browser/com.google.android.browser.BrowserActivity} }

(4) ok,成功了, 大家试试下面的命令吧:

# am start -a android.intent.action.VIEW -d http://mwjian.javaeye.com
am start -a android.intent.action.VIEW -d http://mwjian.javaeye.com
Starting: Intent { action=android.intent.action.VIEW data=http://mwjian.javaeye.com }

# am start -a android.intent.action.CALL -d tel:88888888
am start -a android.intent.action.CALL -d tel:88888888
Starting: Intent { action=android.intent.action.CALL data=tel:88888888 }

# am start -a android.intent.action.ALL_APPS
am start -a android.intent.action.ALL_APPS
Starting: Intent { action=android.intent.action.ALL_APPS }

# am start -a android.intent.action.VIEW geo:0,0?q=shanghai
am start -a android.intent.action.VIEW geo:0,0?q=shanghai
Starting: Intent { action=android.intent.action.VIEW data=geo:0,0?q=shanghai }

 

2. adb mount ,push的使用

    Android 的主要调试工具adb(Android debuging bridge),ddms是一个在adb基础上的一个图形化工具。 这里主要讲解Android adb,它是一个命令行工具。而ddms功能与adb相同,只是它有一个图形化界面。对不喜欢命今操作方式的人来说是一个不错的选择。这些命令在Android sdk下的tools目录下。这些命令在linux和window中都可运行

    (1) 首先确定本机上有一个模拟器已启动。确定是否有模拟器已启动可以使用命令:

adb devices
List of devices attached
emulator-5554 device
emulator-5556 device

返回一个5554的模拟器。

    (2) 给模拟器安装一个应用程序,使用命令 adb install

adb install /home/myname/test.apk

    t在Android adb中,test.apk是一个打包好的应用程序。

    安装好的程序可以在用adb shell 命令在模拟器目录/system/app中找到,文件名字都和安装的一样。

    (3) 文件传输:pc机与模拟机之间的文件传输可以使用adb pull 和adb push

adb pull是把文件从模拟机上复制到pc机上,使用方法如下
adb pull < remote> < local>

    其中remote代表模拟机文件路径,local为pc机文件路径。

    如:adb pull /system/app/test.apk /home/myname/test.apk

    adb push则相返,是把文件从pc机上复制到模拟机上,push可以把任务文件都复制到模拟机上,如果是把一个apk文件上传到/system/app/下则和adb install作用一样。使用方法
adb push < local> < remote>

    大家都明白Android是一个操作系统平台,启动一个模拟器就启动了一个操作系统。可以使用Android adb连接到这个操作系统,并运行一些系统命令,就像平时大家用终端访问一台远程linux/unix服务器。可以使用adb shell。如下进行shell后运行ls命令,在该shell下可运行linux下一些常用的命令,注意:adb shell是只启动一个模拟器(emulator)的情况,如果启动了多个模拟器,如刚才使用的adb devices命令返回了两个模拟器,如果要连接其中一个则加参数-s:使用如:adb -s emulator-5554 shell
adb shell
# ls
sqlite_stmt_journals
cache
sdcard
etc
init
init.goldfish.rc
init.rc
data
sys
system
proc
default.prop
sbin
root
dev
#

    (4) Android adb删除文件,如果使用adb shell直接进入用rm命令删除文件是删不掉的。在adb shell命令前运行adb remount

$adb remount;
$adb shell
#