android控制之 adb shell (刚开始更新)

第一步:首先,下载adb1.0.32.zip,里面有如下图的内容:

第二步:解压缩,复制Adb.exe,和fastboot.exe到System32,注意AdbWinUsbApi.dll,AdbWinApi.dll这两个复制到System文件夹,不然打不开!

第三步:打开adb,必须使用cmd,不然闪退;使用cmd直接输入adb即可;如图

第四步:安装android手机驱动

第五步:编写java代码 操作Adb

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;

public class t1 {
    public static void main(String[] args){try {

        Process process = Runtime.getRuntime().exec("adb shell");  //adb shell

        final BufferedWriter outputStream = new BufferedWriter(new OutputStreamWriter(process.getOutputStream()));

        final BufferedReader inputStream = new BufferedReader(new InputStreamReader(process.getInputStream()));

        //这里一定要注意错误流的读取,不然很容易阻塞,得不到你想要的结果,

       final  BufferedReader  errorReader = new BufferedReader(new InputStreamReader(process.getErrorStream()));

        new Thread(new Runnable() {

            String line;

             public void run() {

                System.out.println("listener started");

                 try {

                     while((line=inputStream.readLine()) != null) {

                        System.out.println(line);

                    }

                 } catch (IOException e) {

                    //e.printStackTrace();  

                 }

             }

        }).start();

        new Thread(new Runnable() {

             final BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

             public void run() {

                System.out.println("writer started");

                 String line;

                 try {

                     while ((line =br.readLine()) != null) {

                        outputStream.write(line + "\r\n");

                        outputStream.flush();

                     }

                 } catch (IOException e) {

                    //e.printStackTrace();  

                 }

             }

        }).start();

        int i = process.waitFor();

        System.out.println("i=" + i);

    } catch (Exception e) {

        e.printStackTrace();

    }

 }

}

运行结果:console

说明已经成功开始执行!

时间: 2024-10-08 12:10:13

android控制之 adb shell (刚开始更新)的相关文章

Android recovery支持adb shell

近期开发过程注意到recovery不支持adb shell.为了便于调试方便,决定添加此功能. 刚開始我们採用的是user版本号系统,进入recovery后,输入adb shell命令.提示"error: no devices/emulators found".我们先确认recovery.img是否包括有adb,看out\debug\target\product\xxx\recovery\root\sbin是否有adb文件(源码\system\core\adb),然后检查\bootab

【Android测试】adb shell回车后出现 error closed的解决办法

现象1:在手机连接USB进行Monkey测试的过程中,再启动一个CMD窗口输入,adb shell回车后出现 error closed的的现象.某些情况下,一些手机会出现此现象. 现象2:在手机连接USB进行eclipse调试或安装App时,eclispe控制台提示:Failed to install ***.apk on device '019417a3': Unable to open sync connection! 个人认为两种现象的原因是一样的. 解决办法如下: 第一种:重启电脑,之后

android adb shell and monkey 学习记录

Monkey环境: android SDK and JDK SDK目录下的platform-tools和tools目录要配置环境变量 查看版本: ADB 的安装这里就不多说了,输入以下命令有如下提示就证明你环境ok,否则自行网上搜索解决下. > adb version 查看连接设备: 输入以下命令可以查询已连接的设备与模拟器: > adb devices 查看appPackage 和 appActivity: 设备运行程序 > adb logcat > \path\log.txt

Android 通过adb shell am broadcast发送广播

Android 通过adb shell am broadcast发送广播 adb shell am broadcast 后面的参数有: [-a <ACTION>][-d <DATA_URI>][-t <MIME_TYPE>] [-c <CATEGORY> [-c <CATEGORY>] ...] [-e|--es <EXTRA_KEY> <EXTRA_STRING_VALUE> ...] [--ez <EXTRA_K

【Android】-- adb shell 命令探索

ADB是什么,做android开发的没有不知道的. window下运行cmd,输入adb help就会打印adb都能够做的事情,包括 adb push ..adb pull .. adb devices  adb install... 等等..并且一搜一大把. 其中有一个命令叫做  adb shell,android是基于linux的,shell模式下linux的命令可是非常多的,android去掉了许多linux的命令,那么从这写命令里面又能够发现什么宝藏呢?寻宝之旅开启!! 首先linux的

Android adb shell 显示不正常的解决方法

在学习安卓过程中,准备使用串口,由于权限上,一直获取不到开发板的root权限. 无奈之下,发现windows下cmd中使用 adb shell,进入开发板的shell模式能正常执行chmod 777 tty* 在开发板中(x210 A8内核),安装了超级控制终端都无权执行chmod 777 tty*,真不明白为何windows的adb shell就能执行. 但使用 adb shell带来一些问题 使用过程中,发现ls语句执行后,显示乱码.如图: 网上更种说法都有. 有的说使用 chcp 6500

【android】android 常用adb 和 adb shell 命令

db是SDK自带的工具,可实现桥接功能:adb shell 可以与手机系统建立交互,是基于andoid Linux系统下的操作 ADB常用命令: 1. 查看设备         adb  devices 这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示 2. 安装软件 adb  install <apk文件路径> 这个命令将指定的apk文件安装到设备上       参数“-r”,它是更新安装的意思,       参数 -s ,安装到sdcard.     

使用adb shell dumpsys检测Android的Activity任务栈

谈起Android程序开发,就需要了解其四个主要的部件:Activity.Service.ContentProvider. BroadcastReceiver.而其中Activity是唯一直接控制程序界面呈现,直面用户操作的部件(当然BrowadCastReceiver也能通过桌面控件(App Widgets)来呈现有限的操作界面).Android对于Activity有严格的生命周期控制,以限制开发者在适当的回调函数里的放上合适的代码.对于多个Activity的转换,Android也有非常好的管

Android查询:模拟键盘鼠标事件之adb shell 实现

1. 发送键盘事件: 命令格式1:adb shell input keyevent "value" 其中value以及对应的key code如下表所列: KeyEvent Value      KEYCODE     Comment 0       KEYCODE_UNKNOWN 1       KEYCODE_MENU     在SDK2.1的模拟器中命令失效,sendevent命令可行 2       KEYCODE_SOFT_RIGHT 3       KEYCODE_HOME