系统调试——ADB 工具
ADB 工具
1.1 概述
ADB(Android Debug Bridge) 是 Android SDK 里的一个工具, 用这个工具可以操作管理Android 模拟器或真实的 Android 设备。
主要功能有:
- 运行设备的 shell(命令行)
- 管理模拟器或设备的端口映射
- 计算机和设备之间上传/下载文件
- 将本地 apk 软件安装至模拟器或硬件设备
ADB 是一个“客户端-服务器端” 程序, 其中客户端主要是指 PC, 服务器端是 Android 设备的实体机器或者虚拟机。
根据 PC 连接 Box 机器的方式不同, ADB 可以分为两类:
- 网络 ADB: 主机通过有线/无线网络(同一局域网) 连接到硬件设备
- USB ADB: 主机通过 USB 线连接到硬件设备
1.2 Buildroot 配置
BR2_PACKAGE_ADBD [=y]
1.3 USB ADB 使用说明
USB ADB 使用有以下限制:
- 只支持 USB OTG 口
- 不支持多个客户端同时使用(如 cmd 窗口, eclipse 等)
- 只支持主机连接一个设备, 不支持连接多个设备
连接步骤如下:
1,机器已经运行 Android 系统, 设置->开发者选项->已连接到计算机 打开, usb 调试开关打开。 (如果是 Linux 系统, 配置已默认打开)
2,PC 主机只通过 USB 线连接到机器 USB OTG 口, 然后电脑通过如下命令与机器相连。
adb shell
3,测试是否连接成功, 运”adb devices”命令, 如果显示机器的序列号, 表示连接成功。
1.4 ADB 窗口乱码显示
如有遇到乱码情况, 主要是由于 Linux 系统输出颜色字符, 该工具并无法正常解析。
有两种解决方案:
- 使用 puTTY 工具进行 adb 调试。
- 命令行下输入以下命令, 去除颜色显示。
alias ls='ls --color=never'
1.5 ADB 常用命令详解
1,查看设备情况
查看连接到计算机的设备或者模拟器:
adb devices
返回的结果为连接至开发机的设备的序列号或是 IP 和端口号(Port) 、 状态。
2,进入设备和模拟器的 shell
进入设备或模拟器的 shell 环境:
adb shell
3,从电脑上传文件到设备
用 push 命令可以把本机电脑上的任意文件或者文件夹上传到设备。
本地路径一般指本机电脑;
远程路径一般指 adb 连接的单板设备。
adb push <本地路径> <远程路径>
示例如下:
adb push “C:\test\test.apk” “/system/test1”
示例说明: 将本地“test.apk” 文件上传到设备系统的“/system/test1” 目录下。
4,从设备下载文件到电脑
pull 命令可以把设备上的文件或者文件夹下载到本机电脑中。
adb pull <远程路径> <本地路径>示例如下:
adb pull /system/test1/test.apk C:\
示例说明: 将设备系统里“/system/test1” 目录下的文件或文件夹下载到本地“C:\” 目录下。
相关文章:
系统调试——ADB 工具
ADB 工具 1.1 概述 ADB(Android Debug Bridge) 是 Android SDK 里的一个工具, 用这个工具可以操作管理Android 模拟器或真实的 Android 设备。 主要功能有: 运行设备的 shell(命令行)管理模拟器或设备的端…...

Qwen-3 微调实战:用 Python 和 Unsloth 打造专属 AI 模型
虽然大家都忙着在 DeepSeek 上构建应用,但那些聪明的开发者们却悄悄发现了 Qwen-3 的微调功能,这可是一个隐藏的宝藏,能把通用型 AI 变成你的专属数字专家。 通过这篇文章,你将学到如何针对特定用途微调最新的 Qwen-3 模型。无论…...

微软Build 2025:Copilot Studio升级,解锁多智能体协作未来
微软Build 2025大会圆满落幕,作为年度科技盛会,它一直是开发与AI技术突破性创新的重要展示平台。对于工程师、创作者和领域专家来说,这是了解微软生态未来动向的关键时刻。今年,Microsoft Copilot Studio推出了一系列新功能&#…...

设计模式——系统数据建模设计
摘要 本文主要介绍了UML在软件系统分析和设计中的应用,详细阐述了六大类关系(泛化、实现、依赖、关联、聚合、组合)及其在UML类图中的表示方法,并通过具体例子说明了这些关系在实际编程中的应用。同时,文章还概述了UM…...

解决docker运行zentao 报错:ln: failed to create symbolic link ‘/opt/zbox/tmp/mysq
1 背景描述 禅道使用docker部署运行过一段,服务正常。 后因服务器断电重启,禅道服务也随docker一起启动,但是服务却无法访问。如下如: 2 查看日志,定位原因 查看禅道日志: # docker logs zentao容器di…...
Spring Boot MVC自动配置与Web应用开发详解
Spring Boot MVC自动配置机制 Spring Boot通过自动配置功能为MVC应用提供了开箱即用的默认配置,开发者无需手动配置即可获得完整的Web支持。以下是核心功能的实现原理: 静态资源支持 默认情况下,Spring Boot会自动从以下classpath目录提供…...

OA工程自动化办公系统 – 免费Java源码
概述 功能完备的OA工程自动化办公系统Java源码,采用主流技术栈开发,无论是学习SpringBoot框架还是开发企业级应用,都是不可多得的优质资源。 主要内容 技术架构 后端技术栈: 核心框架:SpringBoot 2.xORM框…...

Apache IoTDB V2.0.3 发布|新增元数据导入导出脚本适配表模型功能
Release Announcement Version 2.0.3 Apache IoTDB V2.0.3 已经发布! V2.0.3 作为树表双模型正式版本,主要新增元数据导入导出脚本适配表模型、Spark 生态集成(表模型)、AINode 返回结果新增时间戳,表模型新增部分聚…...

某校体育场馆结构自动化监测
1. 项目简介 某小学学校成立于2020年,是一所公办小学,以高起点定位为该区优质教育新增长极,依托当地学院及教师进修学院附属小学资源,注重学生综合素质培养,近年来,该小学聚焦“五育” 领域,不…...
MySQL 9.0 相较于 MySQL 8.0 引入了多项重要改进和新特性
MySQL 9.0 相较于 MySQL 8.0 引入了多项重要改进和新特性,以下是两者的主要区别及其详细说明: 1. 认证机制 MySQL 8.0 支持 mysql_native_password 和 caching_sha2_password 认证插件。默认使用 caching_sha2_password,但未完全移除 mysql_native_password。MySQL 9.0 完全…...

Android 3D球形水平圆形旋转,旋转动态更换图片
看效果图 1、事件监听类 OnItemClickListener:3D旋转视图项点击监听器接口 public interface OnItemClickListener {/*** 当旋转视图中的项被点击时调用** param view 被点击的视图对象* param position 被点击项在旋转视图中的位置索引(从0开始&a…...

数据结构与算法学习笔记(Acwing 提高课)----动态规划·树形DP
数据结构与算法学习笔记----动态规划树形DP author: 明月清了个风 first publish time: 2025.6.4 ps⭐️树形动态规划(树形DP)是处理树结构问题的一种动态规划方法,特征也很明显,会有一个树形结构,其实是DFS的优化。…...
FTP 和 SFTP 介绍及 C/C++ 实现分析
1. FTP 协议概述 FTP(File Transfer Protocol)是一种用于在网络上进行文件传输的标准协议,诞生于 1971 年,是互联网上最早的应用层协议之一。它基于客户端 - 服务器模型,使用 TCP 作为传输层协议,默认通过 …...

leetcode hot100刷题日记——36.最长连续序列
解答: 实际上在哈希表中存储不重复的数字。 然后遍历哈希表,找间隔,更新最大间隔。 class Solution { public:int longestConsecutive(vector<int>& nums) {unordered_set<int>hash;for(int num:nums){hash.insert(num);}in…...

CentOS7关闭防火墙、Linux开启关闭防火墙
文章目录 一、firewalld开启、关闭防火墙1、查看防火墙状态 一、firewalld开启、关闭防火墙 以下命令在linux系统CentOS7中操作开启关闭防火墙 # 查询防火墙状态 systemctl status firewalld.service # 开启防火墙 systemctl start firewalld.service # 开机自启动防火墙 syste…...

PyTorch——搭建小实战和Sequential的使用(7)
import torch from torch import nn from torch.nn import Conv2d, MaxPool2d, Flatten, Linearclass TY(nn.Module):def __init__(self):"""初始化TY卷积神经网络模型模型结构:3层卷积池化,2层全连接设计目标:处理32x32像素的…...
基于大模型的腔隙性脑梗塞风险预测及治疗方案研究
目录 一、引言 1.1 研究背景与意义 1.2 研究目的与方法 1.3 国内外研究现状 二、腔隙性脑梗塞概述 2.1 定义与分类 2.2 发病机制与病理生理过程 2.3 临床表现与诊断方法 三、大模型技术原理与应用现状 3.1 基本概念与技术架构 3.2 在医疗领域的应用案例与优势 3.3 …...

Python 开发效率秘籍:PyCharm、VS Code 与 Anaconda 配置与实战全解
目录 一、IDE(集成开发环境)是什么?二、Python IDE有哪些,哪款适合初学者?三、Visual Studio Code下载和安装教程3.1 VS Code下载和安装3.2 VS Code运行Python程序 四、PyCharm下载和安装教程4.1 PyCharm下载4.2 PyCharm安装4.3 运行PyCharm4.4 创建工程…...
[C]C语言日志系统宏技巧解析
代码解释:日志标签字符串化宏 这段代码定义了一个名为 _LOG_TAG 的宏,用于将 LOG_TAG_CONST 转换为字符串形式。这在日志系统中很常见,用于为不同模块添加标识前缀。 宏结构分析 #define _LOG_TAG STR(LOG_TAG_CON…...
自动驾驶系统研发系列—激光雷达感知延迟:自动驾驶安全的隐形隐患?
🌟🌟 欢迎来到我的技术小筑,一个专为技术探索者打造的交流空间。在这里,我们不仅分享代码的智慧,还探讨技术的深度与广度。无论您是资深开发者还是技术新手,这里都有一片属于您的天空。让我们在知识的海洋中一起航行,共同成长,探索技术的无限可能。 🚀 探索专栏:学…...
内网应用如何实现外网访问?无公网IP本地端口网址服务提供互联网连接
一、应用程序外网访问遇到的问题 在现实的工作场景中,在公司内网的服务器上有很多的应用系统,这些系统只能局限于在公司内部使用,而在外网却无法使用。 二、外网访问内网应用常见的解决方案 如何在外网使用这些系统呢?下面简单…...

大话软工笔记—组合要素1之要素
1. 要素来源 对象是要素的来源,要素是从对象分解而来的。可将对象分为优化类和非优化类,如下图所示。 对象分类图 2. 要素的概念 2.1 要素的定义 要素,是构成事物必不可少的因素,要素的集合体构成了对象。 2.2 要素的内容 要…...
oracle从表B更新拼接字段到表A
oracle中表A怎么从表B中追加相对应的编码到表A字段里, 在Oracle数据库中,如果你想从表B中获取数据并更新到表A的某个字段里,可以使用UPDATE语句结合子查询来实现。假设表A有一个字段叫做code,你希望根据某个键(比如id&…...

平台化 LIMS 系统架构 跨行业协同与资源共享的实现路径
在科技快速发展的今天,质检行业正面临着效率、合规和数据安全的多重挑战。新一代质检 LIMS 系统以智能化与平台化为核心,为实验室管理提供了全新的解决方案。 一、智能化:从数据采集到分析的全流程升级 传统质检流程中,人工数据录…...

RedisTemplate查询不到redis中的数据问题(序列化)
RedisTemplate查询不到redis中的数据问题(序列化) 一.问题描述 存入Redis中的值取出来却为null,问题根本原因就是RedisTemplate和StringRedisTemplate的序列化问题、代码示例: SpringBootTest class Redis02SpringbootApplicationTests {Autowiredprivate RedisTe…...
如何利用乐维网管进行IP管理
IP管理是网络管理中的关键环节,对于保障网络的正常运行、提升资源利用效率以及保障网络安全等方面都具有不可忽视的重要性。乐维网管在IP管理方面具有多种实用功能,以下从IP规划与分配、IP状态监测、IP冲突处理、IP审计与报表生成四个方面,介…...
unix/linux,sudo,其历史争议、兼容性、生态、未来展望
sudo作为一个广泛应用的系统工具,在其发展历程中,自然也伴随着一些讨论、挑战和对未来的展望。 一、 历史争议与讨论 (Historical Controversies and Discussions) 虽然sudo被广泛认为是成功的,但也存在一些历史上的讨论点或潜在的争议: 复杂性 vs. 简洁性 (sudoers语法)…...
git stash命令用法
git stash 是 Git 中一个非常有用的命令,它可以临时保存当前工作区的修改,让你可以切换到其他分支或者处理其他任务,而不需要提交这些还未完成的修改。 一、基本用法 1. 保存当前修改(包括暂存区和工作区的内容) git…...

SkyWalking如何实现跨线程Trace传递
一、概述 SkyWalking 的中构建 Trace 信息时会借助 ThreadLocal来存储一些上下文信息,当遇到跨线程的时候,如果 Trace 的上下文信息没有传递到新线程的ThreadLocal 中,那么链路就断开了。那么SkyWalking是如何解决这个问题的呢? …...
软件工程专业的本科生应该具备哪些技能
软件工程专业的本科生需要具备扎实的技术基础、良好的开发流程认知和一定的软技能,以适应软件开发行业的需求。以下从技术技能、开发流程与工具、软技能、实践能力等维度整理核心技能清单,供参考: 一、核心技术技能 1. 编程语言 - 必学基础语…...