Android真机网络adb联机调试初探
新项目是一个基于android4.2设备。刚拿到demo板时就对联机互调感兴趣了。处于以前在S3c2440上对linux的移植使用经验。心里猜测对于android设备应该也这样。所以通过搜索资料整理如下简单步骤,方便自己记忆。
本例结合Linux开发主机与Amlogic-8726MX运行Android4.2为例说明步骤:
对Android比较熟悉的开发人员,对adb通过USB(USB连接Android设备)调试Android设备应该不会陌生,因为大部分资料都是这样做的。但是假如你的Android设备没有USB口,只有网口,能不能调试呢?答案是肯定的。adb怎样通过tcp/ip来调试Android设备。adb早期版本只能通过USB来对设备调试,从adb v1.0.25开始,增加了对通过tcp/ip调试Android设备的功能。
如果你想adb通过tcp/ip来调试设备,必须要满足如下条件:
1、设备上面首先要有网口。
2、设备和研发机(PC机)已经接入局域网,并且设备设有局域网的IP地址。
3、要确保研发机和设备能够相互ping得通。
4、研发机已经安装了Android SDK(要确保SDK版本是2.0之后的版本)。(确保有相应的环境变量,adb在sdk的platform-tools目录下,所以要将platform-tools所在地路径)
5、检查研发机上的adb的版本,是否是1.0.25之后的版本。方法就是在shell中敲入adb,回车,显示帮助,第一行就是adb版本信息,如上面所示。
6、确保Android设备中adbd进程(adb的后台进程)已经运行。adbd进程将会监听端口5555来进行adb连接调试。
本文假设设备的ip为192.168.0.183,下文将会用这个IP建立adb连接,并调试设备。
1、首先Android设备需要先启动,如果可以话,可以确保一下adbd启动。
在Android设备的串口终端中输入:
stop adbd
start adbd
2、在研发机中,输入:
adb connect 192.168.1.5:5555
adb kill-server
adb disconnect 192.168.1.5:5555
如果连接成功会进行相关的提示,如果失败的话,可以先kill-server命令,然后重试连接。
3、如果连接已经建立,在研发机中,可以输入adb相关的命令进行调试了。比如adb shell,将会通过tcp/ip连接设备上面。和USB调试是一样的。这里就不多说了。
4、调试完成之后,在研发机上面输入如下的命令断开连接:
这样就通过TCP/IP完成了对Android设备的调试。
附常用adb命令:
安装软件 adb install apk文件名称.apk
重新安装该软件 adb install -r apk文件名称.apk
卸载apk软件 adb uninstall apk包名.apk
查看设备上的运行日志,此项可以用来查错 adb logcat
查看手机是否连接,以及连接了几台设备 adb devices
进入手机的超级终端Terminal adb shell
重新挂载文件系统 adb remount
重启手机 adb reboot
重启到Recovery界面 adb reboot recovery
重启到bootloader界面 adb reboot bootloader
映射出目录 mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
退出su exit
退出shell准备接受下一个adb命令 exit
增加flash_image文件到手机上
adb push flash_image.zip /system/bin/flash_image recovery先复制到卡上
adb push recovery-RA-heroc-v1.6.2.img /sdcard 再次进入adb环境 adb shell
修改文件属性 chmod 0755 /system/bin/flash_image
重启系统 reboot
Android真机网络adb联机调试初探的更多相关文章
- 通过adb shell操作android真机的SQLite数据库
要通过命令行直接操作android真机上的SQLite数据库,可以直接通过adb shell来完成,不过,前提是必须获得root权限. 另外,android系统其实就是linux的shell,这个应该 ...
- 使用ADB无线连接Android真机进行调试
使用ADB无线连接Android真机进行调试 其实这已经是一个很古老的知识了,记录一下备忘. 准备工作 手机和电脑需要在同一个局域网内 电脑上已经安装好ADB工具,可以是Mac或者Windows ...
- 在Mac系统上配置Android真机调试环境
在Mac系统上配置Android真机调试环境 mac上配置安卓环境还说挺方便的,真机调试也比win上要好一些.win上被各种软件强行安装了xxx助手. 在mac上就了一个干净的感觉. 下载Androi ...
- android真机自动化测试
appium执行用例时报错问题: 问题解析: 一般该种情况都是因为来连接了多个设备,验证办法:cmd->执行adb devices 看结果是否是多个devices ,如果是这个问题,停掉多余设 ...
- Android真机测试,连接到本地服务器的方法
1. 前言 作为一名Android开发者,不管怎么说,都会经历使用Android真机来测试连接本地服务器这样的事情.这里所说的“本地服务器”大多数时候指的是:搭载有某种服务器软件的PC,例如搭载有To ...
- Unity Frame Debugger连接Android真机调试
当用Profiler分析到不是代码导致的性能问题,当前场景最大的性能瓶颈是渲染时,或者自己写的Shader要调试时,都可以用Frame Debugger进行调试. 按下列步骤设置打包,既可以用Prof ...
- Unity Profiler连接Android真机调试
Profiler在Editor模式就可以观看性能消耗,但是毕竟电脑配置高,跟手机真机环境还是有区别.实际开发中的优化还是推荐用真机测试. 因为IOS一般比Android手机的配置高,在Android平 ...
- appium连接Android真机,并调试
Android真机:华为pad2 Android和Windows连接同一个局域网 连接USB Android机设置: 打开USB调试 cmd>adb devices,显示Android序列号 , ...
- Android 真机投影到PC端,真机投影工具;Vysor
Vysor可以把Android真机投影到PC端,也就是电脑上:手机端和PC端课同步操作: Vysor是Chrome浏览器的插件,我们想要添加这个插件需要FQ: 从这里可以直接下载:Vysor
随机推荐
- WCF技术剖析之九:服务代理不能得到及时关闭会有什么后果?
原文:WCF技术剖析之九:服务代理不能得到及时关闭会有什么后果? 我们想对WCF具有一定了解的人都会知道:在客户端通过服务调用进行服务调用过程中,服务代理应该及时关闭.但是如果服务的代理不等得到及时的 ...
- 【HTTP】Fiddler(三)- Fiddler命令行和HTTP断点调试
一. Fiddler内置命令. 上一节(使用Fiddler进行抓包分析)中,介绍到,在web session(与我们通常所说的session不是同一个概念,这里的每条HTTP请求都成为一个sessio ...
- vi/vim高级命令集粹
vi/vim高级命令集粹 (ctrl +v过来 留着以后看) 1.交换两个字符位置 xp 2.上下两行调换 ddp 3.把文件内容反转 :g/^/m0/ (未通过) 4.上下两行合并 J 5.删除所有 ...
- CF 224 B Array
给你n个数,求[l, r] 的一段数,a[l] - a[r] 一共含有k个不相同的数,且sum a[l, r] 最小的那一段. 用队列维护当前数段中不同元素的个数即可. #include<ios ...
- 关于WEB三层架构的思考
1.MVC设计思想 MVC程序设计思想是眼下比較流行的WEB开发的模式,当中,M(model)是模型.即JavaBean,用来封装和保存数据:V(view)是视图,即JSP.用来显示内容:C(cont ...
- JAVA 操作 DBF 文件数据库
1.依赖夹包 javadbf-[].4.1.jar jconn3.jar 2.添加属性文件 jdbc.properties jdbc.driverClassName=com.sybase.jdbc3. ...
- HBase数据存储格式
好的数据结构,对于检索数据,插入数据的效率就会很高. 常见的数据结构 B+树 根节点和枝节点非常easy,分别记录每一个叶子节点的最小值,并用一个指针指向叶子节点. 叶子节点里每一个键值都指向真正的 ...
- 【LeetCode从零单排】No 3 Longest Substring Without Repeating Characters
题目 Given a string, find the length of the longest substring without repeating characters. For exampl ...
- Filter和FilterChain具体的使用说明
一.Filter的介绍及使用 什么是过滤器? 与Servlet类似,过滤器是一些web应用程序组件,能够绑定到一个web应用程序中.可是与其它web应用程序组件不同的是,过滤器是"链&quo ...
- TMemoryStream、String与OleVariant互转
//////////////////////////////////////////////////////////////////////////////////功能: STRING 的内容流化到 ...