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

这篇具有很好参考价值的文章主要介绍了【嵌入式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文章来源地址https://www.toymoban.com/news/detail-807080.html

到了这里,关于【嵌入式Android各种调试命令】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 嵌入式软件调试与验证4自动重现和分析嵌入式软件中的Bug

    嵌入式软件的重要性逐年增加。ISO26262标准的最高安全级别要求十个9小时内无故障运行。然而,历史上的一些项目表明,即使进行了全面的测试,多年来仍有许多错误未被发现。航天飞机的控制计算机仅有50万行源代码,却经过了长达8年的测试,每行源代码耗资1000美元,即总

    2024年02月08日
    浏览(52)
  • 嵌入式软件调试与验证1概述

    近年来,嵌入式系统(ES Embedded systems)因其灵活的操作和可能性而被广泛应用于电子系统行业。嵌入式系统由硬件、软件和其他模块(如机械)组成,旨在作为更大系统的一部分执行特定任务。网络物理系统(CPS Cyber-Physical System)和物联网(IoT Internet of Things)等重要的新概

    2024年02月08日
    浏览(43)
  • 嵌入式软件调试与验证2仿真

    目前的EDA环境提供了各种固件调试方法。通常可以使用以下方法之一: 使用硬件的SystemC模型进行仿真 这可以在不接触硬件的情况下尽早开始固件开发,并在假设模型准确的情况下测试代码的功能。主要局限是缺乏系统视图和(取决于模型的准确性)缺乏硬件时序准确性(行

    2024年02月08日
    浏览(38)
  • 【嵌入式项目应用】__用于搭建调试输出、建立时间系统的嵌入式框架“Zorb Framework”

    目录 一、什么是Zorb? 二、嵌入式环境搭建 三、调试输出 四、实现断言 五、建立时间系统 六、结束语 (* ̄︶ ̄)创作不易!期待你们的 点赞、收藏和评论喔。 Zorb Framework是一个基于 面向对象 的思想来搭建一个 轻量级的嵌入式框架 。 搭建Zorb Framework的目的是为在不能运行

    2024年02月06日
    浏览(47)
  • 嵌入式开发板qt gdb调试

    1) 启动 gdbserver ssh 或者 telnet 登陆扬创平板 192.168.0.253, 进入命令行执行如下: chmod 777 /home/HelloWorld (2) 打 开 QTcreator-Debug-StartDebugging-Attach to Running Debug Server 进行如下设置,设置监听端口10000. 点击上图中的按钮,由于按钮中的函数设置了断点,则跳到断点,界面如下

    2024年02月04日
    浏览(94)
  • 嵌入式软件调试与验证3动态时态断言

    软件产业发展迅速,程序规模越来越大。相比之下,调试文献的进展却相对缓慢。大多数调试器只适用于某一类或某一组错误。程序错误可能是由多种情况造成的,并在其根本原因出现很久之后才被发现。了解源代码和程序的执行行为对于定位和找到大多数错误的原因至关重

    2024年02月08日
    浏览(39)
  • 嵌入式驱动开发之框架及调试技巧累积

    知识储备。 在linux系统中,App无法操作硬件的,不具备相应的权限。在mmu(内存管理单元)作了划分的,应用层只能操作属于它的mmu部分。操作硬件只能是通过驱动程序。应用程序与驱动程序之间有严格的界限。驱动程序在内核中。 如App使用open函数打开设备时,会先设置某个寄

    2024年02月06日
    浏览(39)
  • 嵌入式-stm32-江科大-OLED调试工具

    1.1 OLED显示屏介绍 学习任何一门语言就需要进行调试,stm32调试方式主要有以下三种: 串口调试:通过串口,将调试信息发送到电脑端,电脑端使用串口调试助手显示调试信息。 显示屏调试:直接将显示屏连接到单片机,将调试信息打印在显示屏上。 Keil调试模式:借助Kei

    2024年01月21日
    浏览(53)
  • 嵌入式_Keil (MDK - ARM) 的调试步骤

    目录 1. 编译 + 调试 2. 复位 + 全速运行 3. 单步调试 4. 逐步调试 5. 跳出调试 6. 运行到光标处 7. 跳转到暂停行 8. 调试窗口 首先为什么需要在 MDK 中进行程序的调试呢?         在 MDK 中进行程序调试的主要目的是识别和解决程序中的问题和错误。         比如说找到程序中

    2024年02月13日
    浏览(51)
  • 【嵌入式Linux驱动】驱动开发调试相关的关系记录

    https://www.processon.com/mindmap/64537772b546c76a2f37bd2f

    2024年02月02日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包