【嵌入式Android各种调试命令】

控制台下

写mac跟sn

#写mac
su
echo 1 > /sys/class/unifykeys/attach
echo mac > /sys/class/unifykeys/name
echo 00:22:6D:C6:9A:57 > /sys/class/unifykeys/write
cat /sys/class/unifykeys/read#写sn
su
echo 1 > /sys/class/unifykeys/attach
echo usid > /sys/class/unifykeys/name
echo 2023011038 > /sys/class/unifykeys/write
cat /sys/class/unifykeys/read

pm系列

pm工具为包管理(package manager)的简称,可以使用pm工具来执行应用的安装和查询应用包的信息、系统权限、控制应用。pm工具是Android开发与测试过程中必不可少的工具。通常放置在System/bin下。

# 列出所有已安装应用程序的包名信息
pm list packages# 查询所有系统应用的包名
pm list packages -s# 查询所有第三方应用的包名
pm list packages -3# 获取指定应用程序包(PACKAGE)的详细信息,包括包名、版本号、权限等
pm dump PACKAGE# 启用指定包名的应用程序
pm enable PACKAGE_NAME# 禁用指定包名的应用程序
pm disable PACKAGE_NAME# 授权给指定包名的应用程序指定权限
pm grant PACKAGE_NAME PERMISSION# 撤销指定包名的应用程序指定权限
pm revoke PACKAGE_NAME PERMISSION# 清除指定包名应用程序的数据及缓存
pm clear PACKAGE_NAME# 强制停止指定包名的应用程序
am force-stop PACKAGE_NAME

am系列

# 通过命令启动APK
am start -n APK包名/启动类名   

截屏录屏

# 截屏
/system/bin/screencap -p /sdcard/screencap.png # 录屏10秒钟
screenrecord --time-limit 10 /sdcard/BlackScreen.mp4  

抓取log

# 清除当前日志缓冲区的内容
logcat -c# 捕获设备上的日志,使用 "threadtime" 格式显示,并将日志输出到 "/data/123.log" 文件
logcat -c && logcat -v threadtime > /data/123.log# 捕获设备上的日志,使用 "time" 格式显示,并将日志输出到 "/data/123.log" 文件
logcat -c && logcat -v time > /data/123.log# 使用adb pull命令将设备上的 "/data/123.log" 文件拉到本地目标路径
adb pull /data/123.log /本地目标路径/

控制gpio口

# 创建 GPIO 控制口,将 GPIO 编号 488 导出到/sys/class/gpio/ 目录下
echo 488 > /sys/class/gpio/export# 查看 GPIO 控制口的方向,输入还是输出
cat /sys/class/gpio/gpio488/direction# 设置 GPIO 控制口的方向为输出
echo out > /sys/class/gpio/gpio488/direction# 设置 GPIO 控制口的值为高电平(1),将 GPIO 置为高电平状态
echo 1 > /sys/class/gpio/gpio488/value# 设置 GPIO 控制口的值为低电平(0),将 GPIO 置为低电平状态
echo 0 > /sys/class/gpio/gpio488/value# 取消 GPIO 的导出,释放 GPIO 控制口
echo 488 > /sys/class/gpio/unexport

获取系统属性

# 获取系统的属性
getprop
e.g :getprop persist.sys.timezone# 设置系统的属性
setprop
e.g :setprop persist.sys.timezone Asia/Tokyo

uboot下

设置kernel log级别

# 设置环境变量 loglevel 的值为 7
s4_ap222# env set loglevel 7# 将当前环境变量保存到存储设备中
s4_ap222# env save# 重新启动设备,应用新的环境变量设置
s4_ap222# reboot

控制gpio口

# 查看所有 GPIO 口的状态
gpio status -a# 拉高指定 GPIOX_8 口的电平
gpio set GPIOX_8# 拉低指定 GPIOX_8 口的电平
gpio clear GPIOX_8不过这个操作方式在reboot之后就失去作用了

SDK下

查看apk的包名和权限

./sdk_name/prebuilts/sdk/tools/linux/bin/aapt dump badging /apk_path/apkName
#需要修改sdk_name\apk_path\apkName为自己对应的信息
example: ./prebuilts/sdk/tools/linux/bin/aapt dump badging ./xxx.apk

删除out下面的.dtb文件(修改dtsi文件时需要)

#查找out目录下的所有dtb文件并执行删除
find out/ -name *.dtb | xargs rm -rf

查看一个apk的详细信息

# 查看 APK 文件的基本信息,包括包名、版本等
aapt dump badging xxx.apk# 使用 grep 过滤出 APK 文件的包名信息
aapt dump badging xxx.apk | grep package# 使用 grep 过滤出 APK 文件的权限信息
aapt dump badging xxx.apk | grep permission# 使用 grep 过滤出 APK 文件的活动(Activity)信息
aapt dump badging xxx.apk | grep activity

这个命令可以查看到apk的包名,版本信息,启动活动,SDK版本,权限信息,目标设备等
也可以在【consol】下使用

dumpsys package 包名

这个命令不仅会显示apk的基本信息还会显示UID,进程信息等,比较多,建议使用的时候结合grep

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/623537.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

高并发IO底层原理

1 概述 IO底层原理是隐藏在Java编程知识之下的基础知识,是开发人员必须掌握的基本原理。本文从操作系统的底层原理入手,通过图文的方式为大家深入剖析高并发IO的底层原理,并介绍如何通过设置来让操作系统支持高并发。 2 IO读写的基本原理 为…

MySQL 8.0中过时的功能(二)

max_length_for_sort_data系统变量由于优化器的变更而被弃用,因为这个变量已经过时并且没有任何效果。用于对连接进行压缩的以下传统参数已经被弃用: - --compress客户端命令行选项; - mysql_options() C API函数的MYSQL_OPT_COMPRESS选项; - slave_comp…

文件模块常用api

文件模块常用api 文件夹常用操作 文件夹操作 fs.mkdir fs.rmdir 需要是空目录 题目:递归删除目录* 串行/并行删除文件*

介绍异或(XOR)运算

异或(XOR)是一种逻辑运算符,用于比较两个二进制数的对应位。它的运算规则如下: 如果两个对应位的值相同,结果为0。如果两个对应位的值不同,结果为1。 异或运算的原理基于以下观察: 反转性质&a…

【电商API】DIY网络爬虫收集电商数据

DIY网络爬虫收集电商数据 网络爬虫是最常见和使用最广泛的数据收集方法。DIY网络爬虫确实需要一些编程知识,但整个过程比一开始看起来要简单得多。 当然,爬虫的有效性取决于许多因素,例如目标的难度、网站方的反爬虫措施等。如果将网络抓取用…

机器学习根据金标准标记数据-九五小庞

根据金标准标记数据是一种在机器学习和数据科学中常见的操作,主要用于评估分类模型的性能。其基本步骤如下: 收集数据:首先需要收集相关领域的原始数据,这些数据通常来自不同的来源和渠道。数据清洗和预处理:在这一步…

JavaScript高级特性详解

摘要:本文将深入探讨JavaScript中的一些高级特性,包括闭包、原型链、高阶函数和异步编程。我们将通过详细的注释和实例来帮助读者理解这些概念,并通过总结部分强调其在实际开发中的应用。 一、闭包 闭包是JavaScript中一个非常重要的概念&a…

soft212期末

文章目录 安卓填空题选择题 C# 安卓 Dalvik中得到Dx工具会把部分class文件转换成dex文件。 如果希望在XML布局文件中调用颜色资源,可以使用color调用 Android程序入口的Activity是在AndroidManifest.xml文件中注册的 Android中查看应用程序日志的工具是LogCat Dal…

JavaScript面向对象之实践项目

1、cat项目 (1)需要修改的原代码 (2)修改要求 使用括号表示法将name属性的值存储在变量catName中。使用点表示法运行greeting()方法。将color属性值更新为白。重写greeting() 方法,使它的问候语为"孟买猫碳头对…

go高频文件操作整理

如有帮助,欢迎留下足迹哦! 目录 创建文件 带权限创建或打开 创建目录(单级、多级) 检查给定路径(目录、文件)是否存在 将目录和文件名拼接成为完整文件路径 给定文件路径获取文件后缀 给定文件路径获…

肯尼斯·里科《C和指针》第6章 指针(7)编程的练习:删除字符

肯尼斯里科《C和指针》第6章 指针(6)编程的练习:查找字符-CSDN博客 2.编写一个函数,删除一个字符串的一部分。函数的原型如下: int del_substr(char *str, char const *substr) 函数首先应该判断substr是否出现在str中…

良心推荐!几款收藏的神级IDEA插件分享

本文已收录至Github,推荐阅读 👉 Java随想录 微信公众号:Java随想录 文章目录 CodeGlanceGsonFormatPOJO to JsonRainbow BracketsTranslationLombokMaven HelperAlibaba Java Code GuidelinesGenerateAllSetterMybatisXChinese (Simplified…

GEE APP——基于PFI纯净森林指数的CCDC-SMA算法的长时序森林监测APP

简介 森林生态系统的碳排放受到破碎化加速和边缘效应的极大影响。要了解这些影响,就必须准确监测破碎化森林景观的变化。然而,这些变化通常强度低、尺度小,因此很难使用中等空间分辨率的卫星图像(如 Landsat)来检测。为了应对这一挑战,本研究开发了纯林指数(PFI),该指…

react js自定义实现状态管理

redux基础实现 myRedux export const createStore (reduce) > {if (typeof reduce ! function) throw new Error(Expected the reducer to be a function.)let state,listeners []state reduce()const getState () > stateconst dispatch (action) > {if(typeo…

Tomcat10.X部署老版本axis2 webservice项目不生效

目录 一、使用场景 二、问题描述 三、原因排查 四、解决方案 一、使用场景 原来项目是OpenJDK8tomcat9构建,现在需要升级到OpenJDK17tomcat10的组合。原来的webservice项目打包成aar格式,通过axis2部署在tomcat上。 二、问题描述 在配置好jdk和to…

c ffmpeg 学习

1. int8_t <> char u_int8_t unsigned char int16_t short int32_t int 2. #define X(x) x,x,x,x,x,x,x,x //表示8个x 主要用于数组赋值 #include <stdio.h> #include <stdlib.h> #include <string.h>#define X8(x)…

【软件测试学习笔记1】测试基础

1.软件测试的定义 软件的定义&#xff1a;控制计算机硬件工作的工具 软件的基本组成&#xff1a;页面客户端&#xff0c;代码服务器&#xff0c;数据服务器 软件产生的过程&#xff1a;需求产生&#xff08;产品经理&#xff09;&#xff0c;需求文档&#xff0c;设计效果图…

redis前缀匹配数据迁移数据

背景&#xff1a; 阿里云的dts不支持前缀匹配迁移。 调研发现RedisShake可以前缀匹配迁移。 https://github.com/tair-opensource/RedisShake proxy 代理模式 阿里云的redis cluster 默认是proxy 代理模式&#xff0c; 不支持增量迁移。 如果要支持增量迁移需要开启 redis clu…

Java支持哪些基本的数据类型?

Java支持哪些基本的数据类型&#xff1f; Java语言支持以下八种基本数据类型&#xff08;primitive types&#xff09;&#xff1a; byte: 8位&#xff0c;有符号的整数&#xff0c;范围从-128到127。short: 16位&#xff0c;有符号的整数&#xff0c;范围从-32768到32767。i…

NEAU_Python程序设计结课作业

1.身份证号合法性判别 【问题描述】我国身份证号码由数字与字母混合组成。早期身份证由15位数字构成。后来考虑到千年虫问题(&#xff08;15位的身份证号码只能为150c年1月1日到9年12月31日出生的人确号)&#xff0c;所以又增加了18位身份证号码编号规则。最后—位(第18位)校验…