[置顶] android 零星调试笔记

adb使用:连接不上手机C:\Users\Administrator\.android\adb_usb.ini 增加一行内容: 0x1782

安装第三方应用

$ adb install apk文件名2.安装系统应用$ adb remount$ adb push apk文件名 /system/app// apk文件名形如testme.apk卸载应用程序1.$ adb uninstall 包名 例如:adb uninstall lee.study

2. 在终端上找到:Home->设置->应用程序->管理应用程序->选择某应用程序->卸载

设置属性值

使用adb shell: 改成中文setprop persist.sys.language zh;setprop persist.sys.country cn;stop;sleep 5;start

注解: setprop persist.sys.language zh(MCC: mobile country code);setprop persist.sys.country cn(MNC: mobile network code);

stop;sleep 5;start 延时5秒重启机器

查看系统定义所有权限列表:

adb shell pm list permissions

拨打电话:am start -a android.intent.action.CALL -d tel:10086 这里-a表示动作,-d表述传入的数据,还有-t表示传入的类型

打开网页:am start -a android.intent.action.VIEW -d(这里-d表示传入的data)

打开音乐播放器:am start -a android.intent.action.MUSIC_PLAYER 或者am start -n com.android.music/om.android.music.MusicBrowserActivity

启动服务:am startservice <服务名称>

例:am startservice -n com.android.music/com.android.music.MediaPlaybackService (这里-n表示组件)

am startservice -a com.smz.myservice (这里-a表示动作,就是你在Androidmanifest里定义的)

发送广播:am broadcast -a <广播动作> am broadcast -a android.intent.action.BOOT_COMPLETED

恢复出厂设置(手机必须拥有root权限):adbshellambroadcast-aandroid.intent.action.MASTER_CLEAR

模拟按键

adb shell input keyevent 3 :模拟home键 3 =KeyEvent.KEYCODE_HOME

利用adb命令查看apk文件包名

在控制台输入命令$adb shell pm可以看到adb shell pm的相关用法要看一个apk文件的相关信息最简单实用的方法是:aapt dump badging [app.apk]如果只是想查看手机上应用的packageName,则输入命令:adb shell pm list packages如果想知道应用对应的apk文件在手机上的安装位置则可以在上面的命令后加-f参数adb shell pm list packages -f查看所有安装的apk包名:adb shell ‘pm list packages -f’ | sed -e ‘s/.*=//’ | sort

adb server is out of date. killing… 解决措施:

描述:adb server is out of date. killing…ADB server didn’t ACK* failed to start daemon *error: unknown host service

究其源就是adb server没启动 解决过程分析整理如下:E:\&;adb nodaemon server cannot bind ‘tcp:5037’ 原来adb server 端口绑定失败继续查看到底是哪个端口给占用了E:\&;netstat -ano | findstr "5037" TCP 127.0.0.1:4112 127.0.0.1:5037 CLOSE_WAIT 2960 TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 4596 TCP 127.0.0.1:5037 127.0.0.1:3006 ESTABLISHED 4596 TCP 127.0.0.1:6149 127.0.0.1:5037 CLOSE_WAIT 2960打开任务管理器kill掉4596 这个进程。ok

解决读取权限问题

例如 使用adb push init.rc / 命令时报错:Unable to chmod init.rc: Read-only file system

在shell命令行中输入adb root切换到root用户然后执行如下命令:(注意,/表示的是根目录,因此这个不仅仅是对sdcard,其他文件也可以读写。rw表示读写权限,mount重挂载文件系统)adb shell mount -o remount rw /执行完后,可以用mount命令查看,当前挂载的文件系统权限如何,可以看出都有读写权限了(rw

代码中安装apk

Runtime.getRuntime().exec("pm install xxx.apk");

需要在manifest.xml文件中,加上INSTALL_PACKAGES的权限,可以用Package install的receiver来处理安装成功后的操作

或者:

/**

*安装apk

*@paramurl

*/

privatevoidinstallApk(){

Fileapkfile=newFile(saveFileName);

if(!apkfile.exists()){

return;

}

Intenti=newIntent(Intent.ACTION_VIEW);

学会宽容,要有一颗宽容的爱心!

[置顶] android 零星调试笔记

相关文章:

你感兴趣的文章:

标签云: