android adb 的各种使用方式详解

这篇文章主要介绍在windows 程序中使用adb 的方法,不介绍adb 的命令。

1) 启动adb 进程,从管道获取输出。

这种方式的弊端有多少,我也不知道,反正就是各种问题吧。但是目前我问过很多朋友,他们都是这么做的,因为这种方法最简单。弊端我列举一下

1) 每次执行一个adb 命令都要启动一个adb 进程,速度太慢,好像就是很不爽

2)  偶尔发现进程管理器中有N 多个adb 进程,然后就卡了。

3)  从管道获取输出,在很多情况下会发现adb 卡死了,进程退不出来。

4)  曾经发现 adb 进程正常启动退出,但是管道就是没有数据。具体原因我现在还不知道。

2) 市面上手机助手使用方式

现在的手机助手无论你怎么搞,在正常情况下都不会出现多个adb 进程,只会有一个adb 的服务进程。我大胆猜测一下,应该是应用程序直接和adb 的服务进程通信,然后直接通过socket 接收数据。

第一种方式启动一个adb 进程,这个adb 进程通过socket 和服务进程通信,把命令发送给服务进程,服务进程接收到命令并且执行,之后把结果通过socket 返回给adb 进程,adb 进程把结果写入管道,然后自己退出了。 因此我们自己可以直接和adb 的服务进程通信,自己的应用程序里面通过socket 给服务进程发送消息。这样速度很快而且也可以避免第一种方式的弊端。但是这种方式也是比较困难,需要自己实现socket 通信

我自己修改了adb 进程,做了很大的优化,并且写了一个lib,这个库封装了和adb 服务进程通信,这个库有一个函数直接调用就可以执行adb 命令。程序只需要静态链接这个库,然后调用一个函数就可以了。

ExecuteADBCommand("devices",strOut);

详细可以了解qq: 2506314894

android adb 的各种使用方式详解,布布扣,bubuko.com

时间: 2024-08-03 11:12:44

android adb 的各种使用方式详解的相关文章

Android开发5大布局方式详解

Android中常用的5大布局方式有以下几种: 线性布局(LinearLayout):按照垂直或者水平方向布局的组件. 帧布局(FrameLayout):组件从屏幕左上方布局组件. 表格布局(TableLayout):按照行列方式布局组件. 相对布局(RelativeLayout):相对其它组件的布局方式. 绝对布局(AbsoluteLayout):按照绝对坐标来布局组件. 1. 线性布局 线性布局是Android开发中最常见的一种布局方式,它是按照垂直或者水平方向来布局,通过“android:

Android中的几种网络请求方式详解

http://blog.csdn.net/zuolongsnail/article/details/6373051 Android应用中使用AsyncHttpClient来异步网络数据 http://blog.csdn.net/sdvch/article/details/13615605 Android中的几种网络请求方式详解,布布扣,bubuko.com

Android 多渠道打包方式详解

Android 多渠道打包方式详解 面试的时候,如果面试官突然问到:你们渠道包是怎么打的?如果你说是用gradle一个一个编译的,然后他很鄙视的说这个效率太低啦,你们写过什么脚本自己打渠道包没?你肯定心里想,卧槽,这么狂炫吊炸天,自己写脚本打包?!其实这个根本也不是太难啦!!今天就来聊聊多渠道打包的原理以及如何自己DIY多渠道打包的工具! 渠道包出现 当一个产品到发版的时候,我们搞Android的就会面临一个超级尴尬的问题:国内这么多的渠道,渠道统计是必须做滴,那么十多个主要渠道再加无限量的地推

Android 中的 Service 全面总结详解【下】

上一篇文章Android 中的 Service 全面总结详解[下] 介绍了Service的一些知识以及本地Service的使用,如果对Service还不太了解的建议先看下上篇文章:本文主要接着上一篇讲下远程服务的使用: 在说到远程服务的时候,我们需要先了解一些预备的知识: 首先来了解一下AIDL机制: AIDL的作用 由于每个应用程序都运行在自己的进程空间,并且可以从应用程序UI运行另一个服务进程,而且经常会在不同的进程间传递对象.在Android平台,一个进程通常不能访问另一个进程的内存空间,

Android FakeID(Google Bug 13678484) 漏洞详解

开始 继上一次Masterkey漏洞之后,Bluebox在2014年7月30日又公布了一个关于APK签名的漏洞--FakeID,并打算在今年的Blackhack上公布更详细的细节,不过作者Jeff Forristal在文中已经给出了不少提示,另外申迪的<FakeID签名漏洞分析及利用>也做了相关介绍.由于其中涉及的知识点较多,所以有部分朋友估计还没有看明白,所以我打算写一篇更加详细漏洞分析解说. 基础概念 在分析之前,有几个基础概念需要普及一下的: APK包中的MF.SF和RSA文件 完成签名

Android 4.4 KitKat NotificationManagerService使用详解与原理分析(二)__原理分析

前置文章: <Android 4.4 KitKat NotificationManagerService使用详解与原理分析(一)__使用详解> 转载请务必注明出处:http://blog.csdn.net/yihongyuelan 概况 在上一篇文章<Android 4.4 KitKat NotificationManagerService使用详解与原理分析(一)__使用详解>中详细介绍了NotificationListenerService的使用方法,以及在使用过程中遇到的问题和

【Android UI设计】Dialog对话框详解(二)

上一篇我们介绍了Dialog的基本使用方法,[Android UI设计]Dialog对话框详解(一)今天继续介绍,废话不多说,今天主要实现ProgressDialog和透明Dialog两种效果,最后介绍一下github上的一个Dialog动画开源库,里面包含多种动画特效,效果图如下: 一.ProgressDialog基本使用 1.ProgressDialog关键代码 mProgressDialog = new ProgressDialog(MainActivity.this); // 圆形pro

[转载] Android签名机制之—签名过程详解

本文转载自: http://www.wjdiankong.cn/android%E7%AD%BE%E5%90%8D%E6%9C%BA%E5%88%B6%E4%B9%8B-%E7%AD%BE%E5%90%8D%E8%BF%87%E7%A8%8B%E8%AF%A6%E8%A7%A3/ 一.前言 又是过了好长时间,没写文章的双手都有点难受了.今天是圣诞节,还是得上班.因为前几天有一个之前的同事,在申请微信SDK的时候,遇到签名的问题,问了我一下,结果把我难倒了..我说Android中的签名大家都会熟悉

Android签名机制之---签名过程详解

一.前言 又是过了好长时间,没写文章的双手都有点难受了.今天是圣诞节,还是得上班.因为前几天有一个之前的同事,在申请微信SDK的时候,遇到签名的问题,问了我一下,结果把我难倒了..我说Android中的签名大家都会熟悉的,就是为了安全,不让别人修改你的apk,但是我们真正的有了解多少呢?所以准备两篇文章好好介绍一下Android中签名机制. 在说道Android签名之前,我们需要了解的几个知识点 1.数据摘要(数据指纹).签名文件,证书文件 2.jarsign工具签名和signapk工具签名 3