当前位置: 首页 > news >正文

【android开发】:android真机测试

1. android platform-tools下载

1.1 下载路径

https://developer.android.com/studio/releases/platform-tools.html
如图:

解压后得到:

1.2 添加环境变量

打开“我的电脑”—》属性—》系统高级设置—》环境变量—》编辑Path变量,将Android platform-tools路径添加到系统环境变量里。

2. root 手机

步骤略;因为可执行文件需要运行在手机的系统目录,SD卡目录无可执行权限。

3. 可执行文件的测试

前提环境:
(1)电脑端安装对应手机的USB驱动。
(2)用USB连接andorid手机和电脑,并且打开手机的开发人员选项-》USB调试选项;

3.1 测试命令

https://blog.csdn.net/LittleFishC/article/details/140828533
/data/local/tmp

1) adb start-server #用于启动adb服务 (2) adb push c:/h264dec/mnt/sdcard/#将pc端二进制可执行文件h264dec拷贝到手机/mnt/sdcard目录下,因为不能直接将文件拷贝到手机系统目录下,如/data,/cache等。 (3) adb push c:/libh264dec.so/mnt/sdcard/#如果二进制可执行文件链接的是动态库,必须将.so库拷贝到/system/lib目录下。 (4) adb shell # 进入命令界面,相当于远程登录到连接的android手机上,此时操作类似Linux系统,可用cp等指令。 (5) adb su #获取root权限,进入root用户。 (6) cp/mnt/sdcard/h264dec/cache #可执行文件必须放到手机系统目录下才能修改权限 (7) cp/mnt/sdcard/libh264dec.so/system/lib #动态库只有拷贝到这个目录下才能被链接。 (8) cd/cache (9) chmod+x./h264dec #增加可执行权限 (10./h264dec-i xxx.264-o/mnt/sdcard/xxx.yuv #运行可执行文件 (11) adb pull/mnt/sdcard/xxx.yuv c:/#导出文件到pc端 备注:可在root权限下,使用mkdir创建新文件夹。 (12) adb kill-server #用于结束adb服务
3.2 adb相关经验
1)adb 服务端口为50372)adb 服务端口被其他应用程序占用且无法释放,可采用以下方法:2.1、查看进程,然后kill相关进程(以下命令是在windows的cmd窗口操作)2.1.1使用 netstat-aoe|findstr"5037"查找ID号 #列出的最后一项为占用5037端口的ID号,如ID号为20002.1.2以对应的进程ID号查找:tasklist|findstr"2000"#根据实际ID号查找2.1.3taskkill/f/t/im adb.ext #杀死该ID号对应的进程号(3)adb shell 进入手机后,执行ps就能显示手机里所有正在运行的进程:3.1、 ps命令参数:-t-x,-p,-P,-c[pid|name]-t显示进程下的线程列表-x 显示进程耗费的用户时间和系统时间,单位s-P 显示调度策略,通过是bg or fg ,当获取失败将会un和er比之前打印的内容多出了一列PCY,表示进程的调度等级 Android进程调度状态:1.foreground process2.visible process3.Service process4.background process5.empty process-p 显示进程的优先级和nice等级-c 显示进程耗费的CPU时间[PID]过滤指定进程PID,[name]过滤指定进程NAME3.2、ps执行之后各列数据的含义: PID:进程号 PPID:父进程号 VSIZE :进程的虚拟内存大小 RSS :进程分配到的屋里内存大小 WCHAN:程正在睡眠的内核函数名称;该函数的名称是从/root/system.map文件中获得的。 NAME :进程名3.3、 查找具体程序如xxxxx所占的进程号 ps|grep"xxxxx"3.4、 kill 掉某具体的进程号如xxxxID kill-s9xxxxID

备注: gdb 设置源文件查找路径:dir 指令: https://wizardforcel.gitbooks.io/100-gdb-tips/content/directory.html

参考网址:https://stackoverflow.com/questions/15162276/android-executing-a-program-on-adb-shell
参考网址:https://developer.android.com/studio/command-line/adb?hl=zh-cn
参考网址:https://stackoverflow.com/questions/38495426/how-to-open-adb-shell-and-execute-commands-inside-shell-using-python
参考网址:https://stackoverflow.com/questions/17334336/how-to-open-adb-and-use-it-to-send-commands

参考网址:https://stackoverflow.com/questions/7860874/execute-a-pure-binary-file-on-android
参考网址:https://stackoverflow.com/questions/8761992/launch-a-script-as-root-through-adb
参考网址:https://stackoverflow.com/questions/2604727/how-can-i-connect-to-android-with-adb-over-tcp/44460975

可用eclipse模拟:
参考网址:https://stackoverflow.com/questions/14435032/how-to-create-jni-android-project-in-eclipse
http://mindtherobot.com/blog/452/android-beginners-ndk-setup-step-by-step/
http://blog.51cto.com/liuxp0827/1438625

http://www.jsqmd.com/news/732894/

相关文章:

  • 如何打造终极电视盒子播放器:TVBoxOSC完全配置指南
  • 深度解析STL文件缩略图生成器stl-thumb:Rust与OpenGL的完美结合
  • 从AHCI协议到代码落地:用Wireshark抓包分析SATA FIS的‘对话’过程(附实战截图)
  • 轻量化AI边缘计算节点搭建:用RDK X3模组+微雪Nano载板打造30g以内的计算单元
  • ASP.NET Core WebApi部署避坑:Windows Server 2016上IIS配置的5个关键细节
  • SOCD Cleaner终极指南:彻底解决游戏键盘输入冲突的4种模式
  • SOCD Cleaner技术解析:游戏输入冲突的系统级解决方案
  • Overleaf插图引用翻车实录:从‘3’到‘Fig.3’,我踩了这三个坑(附完整修复代码)
  • PyMacroRecord:解决自动化操作中宏设置同步的技术挑战
  • 【国家级智算中心调度规范首发】:MCP 2026智能分配引擎的8项硬性指标、3类合规红线与2026年前必须完成的5项适配动作
  • SAP PP物料主数据MRP视图配置避坑指南:从MRP类型到批量程序,新手必懂的10个关键点
  • 若有亿万身家,如何打造新代码托管平台?解决 GitHub 现存 9 大问题!
  • 创业团队如何借助Taotoken统一管理多个AI项目的模型成本
  • 别再死记硬背了!用Python脚本模拟UDS DTC状态位变化(附代码)
  • Android SELinux排错实录:我的te文件改了,为什么权限还是不生效?
  • 新手入门如何在Taotoken平台获取API Key并开始第一次调用
  • RISC-V异常处理机制深度解耦:为什么你的C驱动总在mepc地址跳变时崩溃?(基于香山南湖核的17处汇编级修复点)
  • 鸿蒙3/安卓玩街机必看:C8、V3、V8手柄混搭4人联机,保姆级改键避坑指南
  • AI聊天机器人响应延迟从2.1s降至86ms,PHP 9.0事件循环调优全记录,仅限首批200位工程师获取的配置模板
  • 2026年成都青少年英语培训TOP7权威排行榜,为你揭秘优质培训机构! - 品牌推荐官方
  • C语言嵌入式RTOS内存管理实战(2026版MISRA-C+CMSIS-RTOSv3双标对齐手册)
  • 阿姆智创21.5寸触摸工控一体机,为SMT产线量身定制,赋能电子制造高效稳定
  • 某城商行理财子信息系统建设构想
  • SKYLENAGE数学评测体系:突破LLMs推理能力天花板
  • 如何快速掌握BG3ModManager:博德之门3模组管理的终极指南
  • Equalizer APO完整教程:免费解锁Windows专业级音频调校
  • AI驱动的跨平台信息聚合引擎:从实体理解到多源加权评分
  • 视频字幕提取终极指南:3步实现本地硬字幕精准识别
  • 【flutter for open harmony】第三方库Flutter 鸿蒙版 语音录制 实战指南(适配 1.0.0)✨
  • 互联网大厂 Java 求职面试:面对微服务与 Spring Cloud 的挑战