Android14 串口控制是能wifi adb实现简介
Android14 串口控制是能wifi adb实现简介
一、前言
文章目录
- Android14 串口控制是能wifi adb实现简介
- 一、前言
- 二、Android14 串口控制是能wifi adb实现
- 1、设置prop属性命令开启adb
- (1)相关prop属性设置
- (2)在设置界面或者 ifconfig命令 查看wifi或者有线的ip地址:
- (3)串口确认查看关键 adb 属性是否ok
- (4)cmd 使用adb connect 连接adb
- 2、设置Settings Global属性命令开启adb
- 3、设置prop属性和设置Settings Global属性命令开启adb的区别
- 三、其他
- 1、wifi adb 控制小结
- 2、Android13 串口控制是能wifi adb实现
- 3、Android 13 wifi adb设置固定端口解决
- 4、Android13 网络 Adb 默认开启
- 5、Android 13 网络 Adb相关流程深入分析研究
- 4、如果需求是连接有线网,应用打开wifi adb 可以正常连接adb
- 5、adb简介及常用命令总结
Android 系统开发初期调试,一般有串口功能调试,但是可能没有adb功能。
adb功能比串口调试方便一些,比如可以直接传输文件,定向打印日志到电脑,投屏,安装电脑中的apk等功能。
还有些情况是设备可以连接有线网,但是wifi有问题,上层接口无法打开adb,但是使用prop属性设置可以打开有线adb调试。
有需要的可以收藏看看。
本文只要介绍实现步骤,不详细介绍具体过程,adb相关过程之前已经分析过了,
虽然有的过程分析不是很准确,但是对于定制化是很有作用的。
二、Android14 串口控制是能wifi adb实现
1、设置prop属性命令开启adb
(1)相关prop属性设置
//获取查看adb 属性
getprop | grep adb //设置 adb 关键属性值
setprop persist.sys.usb.config adb //设置 usb adb开关,有些设备默认是开启
setprop persist.adb.tls_server.enable 1 //设置adb开关,默认都是关闭的
(2)在设置界面或者 ifconfig命令 查看wifi或者有线的ip地址:
eth1 Link encap:Ethernet HWaddr 00:0e:c6:9c:5a:cc Driver ax_usb_nicinet addr:192.168.31.18 Bcast:192.168.31.255 Mask:255.255.255.0 RX bytes:1028622 TX bytes:55833
(3)串口确认查看关键 adb 属性是否ok
console:/ # getprop | grep adb
[init.svc.adbd]: [running] //1、查看adb 是否正常运行
[persist.adb.tls_server.enable]: [1] //2、adb 服务是否开启
[persist.adb.wifi.guid]: [adb-a3b8c4a577a390f3-f6PGY4] //wifi adb 的进程
[persist.sys.usb.config]: [adb] //3、usb adb 是否打开
[service.adb.tls.port]: [33395] //4、adb端口号
[sys.rkadb.root]: [0]
[sys.usb.config]: [adb]
console:/ #
需要确认1-3点是否是adb 打开的状态;
第4点事adb端口号,Android13 之后都都是要端口号才能连接wifi adb;
当然也可以系统源码设置成默认5555,就可以不用设置端口号连接adb。
(4)cmd 使用adb connect 连接adb
C:\Users\As10048>adb connect 192.168.31.15:33395
connected to 192.168.31.15:33395C:\Users\As10048>adb devices
List of devices attached
192.168.31.15:33395 device
可以看到是可以正常连接adb,显示adb列表的。
2、设置Settings Global属性命令开启adb
//获取当前adb wifi属性值:
settings get global adb_wifi_enabled
settings get global adb_enabled
或者
settings list global | grep adb //查询adb 相关settings global 属性
adb_enabled=0
adb_wifi_enabled=0//设置当前adb wifi属性值:
settings put global adb_wifi_enabled 1
settings put global adb_enabled 1
3、设置prop属性和设置Settings Global属性命令开启adb的区别
1、设置prop属性 可以进行有线网和wifi adb,但是设置应用查看adb依然是关闭的状态;2、设置Settings Global属性,是一定要连接wifi才能开启wifi adb的
因为Java代码打开adb流程里面判断了,wifi连接才使能adb,否则会马上关闭adb
所以只是调试使用并且需要有线网adb的情况,设置prop属性进行adb调试就行。
上面是未进行系统代码适配的情况,进行adb属性相关的设置;
其他adb知识,比如设置固定端口等设置有兴趣的可以往下看看。
三、其他
1、wifi adb 控制小结
主要相关命令:
//Settings 设置wifi adb 使能
settings put global adb_wifi_enabled 1//获取adb属性,1 表示开启,0表示关闭
settings get global adb_wifi_enabled //prop 设置wifi adb 使能
setprop persist.adb.tls_server.enable 1
//查询当前adb prop属性,1表示开启,0 表示关闭
getprop persist.adb.tls_server.enable//获取wifi adb端口号,
getprop service.adb.tls.port//查看usb debug 模式
settings get global adb_enabled
//设置usb debug模式命令
settings put global adb_enabled 1
如果是wif连接可以使用settings开启wifi adb,
如果是有线网连接的情况,只能使用prop属性开启 网络adb。
2、Android13 串口控制是能wifi adb实现
之前分析的adb使能介绍,和文本内容类似。
https://blog.csdn.net/wenzhi20102321/article/details/140047528
3、Android 13 wifi adb设置固定端口解决
需要适配修改系统源码。
https://blog.csdn.net/wenzhi20102321/article/details/131056174
4、Android13 网络 Adb 默认开启
设置端口号默认为5555 ,adb 连接时就不用设置端口号;
需要修改系统代码进行适配。
https://blog.csdn.net/wenzhi20102321/article/details/132382549
5、Android 13 网络 Adb相关流程深入分析研究
研究一遍adb具体流程,有兴趣的看看。
https://blog.csdn.net/wenzhi20102321/article/details/132735323
4、如果需求是连接有线网,应用打开wifi adb 可以正常连接adb
看懂上面两三篇文章,应该就会处理的。
需要:
(1)设置固定端口号,adb_wifi.cpp 源码修改
(2)源码 AdbDebuggingManager.java 去除wifi连接判断
后面就可以用settings global 属性控制有线网adb 了
5、adb简介及常用命令总结
https://blog.csdn.net/wenzhi20102321/article/details/113487927
相关文章:
Android14 串口控制是能wifi adb实现简介
Android14 串口控制是能wifi adb实现简介 一、前言 文章目录 Android14 串口控制是能wifi adb实现简介一、前言二、Android14 串口控制是能wifi adb实现1、设置prop属性命令开启adb(1)相关prop属性设置(2)在设置界面或者 ifconfi…...
启动wsl里的Ubuntu24报错:当前计算机配置不支持 WSL2,HCS_E_HYPERV_NOT_INSTALLED
问题:启动wsl里的Ubuntu24报错 报错信息: 当前计算机配置不支持 WSL2。 请启用“虚拟机平台”可选组件,并确保在 BIOS 中启用虚拟化。 通过运行以下命令启用“虚拟机平台”: wsl.exe --install --no-distribution 有关信息,请访…...
常用AI工具推荐
AI对话相关 Deepseek https://chat.deepseek.com/ Kimi https://kimi.moonshot.cn/ 豆包 https://www.doubao.com/ 文心一言 https://yiyan.baidu.com/ 腾讯元宝 https://yuanbao.tencent.com 通义千问 https://tongyi.aliyun.com/qianwen/ 图片生成相关 即梦 https://jimen…...
用AI学编程3——Java学习1
一个Java文件, 整理出Java从入门到精通的所有知识点, 给出注释, 给出这样的Java文件 Java 学习整合文件 /*** Java 学习整合文件* 包含 Java 从入门到精通的主要知识点,包括基础语法、面向对象编程、异常处理、集合框架、多线程…...
如何监控 Pod 的 CPU/内存使用率,prometheus+grafana
一、监控 Pod 的 CPU/内存使用率的方法 1. 使用 kubectl top 命令(临时检查) # 查看所有 Pod 的资源使用率(需安装 Metrics Server) kubectl top pods --all-namespaces # 查看指定命名空间的 Pod kubectl top pods -n <n…...
云服务器Linux安装Docker
系统要求 Docker 官方建议将 Docker 运行在 Linux系统上,当然也可以在其他平台运行,本篇博客只介绍在 Linux 系统上的安装方法。 Docker 运行在 CentOS7.X 版本以上,本文使用阿里云 ECS 云服务器 CentOS 7.4 版本。 Docker 需要安装在 64 …...
信息安全与网络安全的区别_信息安全与网络安全之差异探析
在当今数字化时代,信息安全与网络安全成为了人们关注的热点话题。尽管这两个概念经常被提及,但它们之间存在着明显的区别。本文旨在探讨信息安全与网络安全的定义、范畴及应对策略,以帮助读者更好地理解和应对相关挑战。 一、定义与范畴的差…...
Express 中 get 参数获取
1. 使用 req.query 获取 URL 查询字符串参数 在 GET 请求中,参数通常以查询字符串的形式附加在 URL 后面,格式为 ?参数名1值1&参数名2值2 。Express 里可通过 req.query 对象获取这些参数。 const express require("express"); const …...
充电桩快速搭建springcloud(微服务)+前后端分离(vue),客户端实现微信小程序+ios+app使用uniapp(一处编写,处处编译)
充电桩管理系统是专为中小型充电桩运营商、企业和个人开发者设计的一套高效、灵活的管理平台。系统基于Spring Cloud微服务架构开发,采用模块化设计,支持单机部署与集群部署,能够根据业务需求动态扩展。系统前端使用uniapp框架,可…...
深度求索(DeepSeek)开源周技术全景与行业影响研究报告
2025年2月24日至28日,中国AI企业深度求索(DeepSeek)发起了为期五天的“开源周”活动,连续开源五大核心代码库(FlashMLA、DeepEP、DeepGEMM、DualPipe、EPLB)及分布式文件系统3FS,覆盖AI模型训练…...
设计AI芯片架构的入门 研究生入行数字芯片设计、验证的项目 opentitan
前言 这几年芯片设计行业在国内像坐过山车。时而高亢,时而低潮。最近又因为AI的热潮开始high起来。到底芯片行业的规律是如何? 我谈谈自己观点:芯片设计是“劳动密集型”行业。 “EDA和工具高度标准化和代工厂的工艺标准化之后,芯…...
串口助手的C#编写以及有人串口服务器USR-DR301的使用
本文介绍C#编写串口程序的要点,串口服务器USR-DR301(RS232转TCP)的使用、以及调试过程中碰到的两个问题: 1). 调用串口报“连到系统上的设备没有发挥作用”. 2). “所有文本框都变成了透明”的异常处理 代码见:https://download.csdn.net/download/qq_34047402/9046713…...
Android中AIDL和HIDL的区别
在Android中,AIDL(Android Interface Definition Language) 和 HIDL(HAL Interface Definition Language) 是两种用于定义跨进程通信接口的语言。AIDL 是 Android 系统最早支持的 IPC(进程间通信࿰…...
【HeadFirst系列之HeadFirst设计模式】第18天之蝇量模式(Flyweight Pattern):优化资源的秘密武器
蝇量模式(Flyweight Pattern):优化资源的秘密武器 在软件开发中,当系统需要创建大量相似对象时,内存占用和性能问题就会浮出水面。《Head First 设计模式》介绍了 蝇量模式(Flyweight Pattern)…...
微信小程序将markdown内容转为pdf并下载
要在微信小程序中将Markdown内容转换为PDF并下载,您可以使用以下方法: 方法一:使用第三方API服务 选择第三方API服务: 可以选择像 Pandoc、Markdown-PDF 或 PDFShift 这样的服务,将Markdown转换为PDF。例如,PDFShift 提供了一个API接口,可以将Markdown内容转换为PDF格式…...
SQL CHAR_LENGTH返回字符串长度的函数
CHAR_LENGTH 是 SQL 中的一个用于返回字符串长度的函数。它计算的是字符串中的字符数,而不是字节数。这在处理多字节字符集(如 UTF-8)时尤其有用,因为一个字符可能会占用多个字节。 CHAR_LENGTH(string) string 是要计算长度的字…...
sqlserver删除表记录语句,及删除表时清零ID的SQL语句
sqlserver中,删除表中所有记录的语句如下 Delete from tableName 例,删除表logs的所有记录 sqlserver,删除表中所有数据,标识列ID归零,保留表结构的语句 truncate table tableName 例,删除表logs的所…...
求最大公约数问题(信息学奥赛一本通-1207)
【题目描述】 给定两个正整数,求它们的最大公约数。 【输入】 输入一行,包含两个正整数(<1,000,000,000)。 【输出】 输出一个正整数,即这两个正整数的最大公约数。 【输入样例】 6 9 【输出样例】 3 【题解代码】 #include<bits/stdc…...
Vue3中动态Ref的魔法:绑定与妙用
前言 在Vue 3的开发过程中,动态绑定Ref是一项非常实用的技术,特别是在处理复杂组件结构和动态数据时。通过动态绑定Ref,我们可以更灵活地访问和操作DOM元素或组件实例,实现更高效的交互和状态管理。本文将详细介绍如何在Vue 3中实现动态Ref的绑定,并通过实例展示其妙用。…...
Conda常用命令汇总
Conda 是一个流行的包管理器和环境管理工具,广泛应用于数据科学、机器学习等领域。它可以帮助我们管理 Python 包以及不同版本的环境,避免包冲突,提升项目的可复现性。以下是一些常用的 Conda 命令,涵盖环境创建、管理、包安装等常…...
2025年科技趋势深度解析:从“人工智能+”到量子跃迁的技术革命
一、“人工智能”国家战略:重塑产业生态的核心引擎 2025年政府工作报告首次将"人工智能"提升至国家战略层面,标志着AI技术正式成为驱动产业升级的核心力量。据麦肯锡最新研究显示,中国云计算市场规模已突破8315亿元,其…...
【瞎折腾/ragflow】构建docker镜像并部署使用ragflow
说在前面 操作系统:win11docker desktop版本:4.29.0docker engin版本:v26.0.0ragflow版本:nightly 安装docker 官网 如果是win11,backend建议使用wsl2 安装好后打开docker desktop,不然docker命令用不了 …...
哈弗赛恩公式计算长度JavaScript实现
哈弗赛恩公式(Haversine formula)是一种用于计算球面上两点间最短距离的数学方法,尤其适用于地球表面。本文将详细介绍哈弗赛恩公式的原理、应用以及如何使用JavaScript实现它。 一、哈弗赛恩公式原理 在球面几何中,哈弗赛恩公式…...
Pytest框架中的Fixture:深入理解与实际应用
Pytest是Python中最流行的测试框架之一,以其简洁的语法和强大的功能而闻名。在Pytest中,fixture是一个非常重要的概念,它允许我们在测试函数执行前后进行一些准备工作或清理工作。本文将深入探讨fixture的使用方法、实际应用场景以及一些高级…...
大模型赋能金融行业:从理念到落地实践
思维导图 引言 🌟 随着人工智能技术的飞速发展,大模型正在重塑各行各业,金融领域尤为明显。本文将基于业内领先金融科技公司的实践经验,系统探讨大模型在金融行业的落地应用、面临的挑战以及未来的发展方向。从AI发展历程、能力边…...
数据结构篇——串(String)
一、引入 在计算机中的处理的数据内容大致可分为以整形、浮点型等的数值处理和字符、字符串等的非数值处理。 今天我们主要学习的就是字符串数据。本章主要围绕“串的定义、串的类型、串的结构及其运算”来进行串介绍与学习。 二、串的定义 2.1、串的基本定义 串(s…...
数据结构--【顺序表与链表】笔记
顺序表 template <class T> class arrList :public List<T> //表示 arrList 类以公有继承的方式继承自 List<T> 类 //公有继承意味着 List<T> 类的公共成员在 arrList 类中仍然是公共成员,受保护成员在 arrList 类中仍然是受保护成员。 { …...
算法.习题篇
算法 — 地大复试 模拟 while循环和MOD循环计数 1.约瑟夫问题 http://bailian.openjudge.cn/practice/3254 using namespace std;bool isNoPeople(vector<bool> c)//判断当前数组是否一个小孩都没有了 {bool nopeople true;for (bool ival : c){if ( ival true)nop…...
大语言模型进化论:从达尔文到AI的启示与展望
文章大纲 引言大语言模型中的“进化论”思想体现遗传变异过度繁殖和生存斗争大模型“过度繁殖”与“生存竞争”机制解析**一、过度繁殖:技术迭代的指数级爆发****二、生存竞争:计算资源的达尔文战场****三、生存竞争胜出关键要素****四、行业竞争格局演化趋势**核心结论自然选…...
MES机联网4:文档资料
目录信息 MES机联网1:技术方案MES机联网2:采集网关MES机联网3:管理后台MES机联网4:文档资料 MQ接入文档 1、建立连接 mqtt连接地址: 192.168.0.138 mqtt端口: 1883 mqtt用户名:admin mqtt密码:123456 …...
