Android 开发中脚本 提高效率工具
在安卓开发中我们常常需要获取日志,通常我们可以通过adb logcat 命令获取日志。同样,我没有可以通过脚本获取。其实质也是通过adb命令实现,只是把命名写入bat文件中,在win系统中直接双击就可以运行文件中的命令,而不需要我们在cmd中输入。下面分析几种获取日志的方法。
1.我们想抓取实时日志,当前小张会说我直接在androidstudio logcat里面就可以看了谁要用你的工具。老张抿嘴一笑,小样。有时候一些情况比如端口问题,或者日志堆积问题,导致我们有一天发现我们的logcat并没有输出日志,或者我们想把日志保留下来慢慢分析,毕竟有些问题并不是一眼就看出问题的。这时候我们可以运行这个工具,然后执行我们的操作。抓我们想要的日志。
adb wait-for-device
adb devices
adb shell logcat -v threadtime >"%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%log.txt"
pause
我们想把我们手机里面的日志,anr carsh 等等都取出来
@echo off
::V1.0 2021-1-18
::各个系统不同,可以根据需求添加或者删除不必要的目录下的数据获取
echo Version:Get Android All Log V1.0
echo.
echo currentTime:%time% Now %time:~0,2%:%time:~3,2%:%time:~6,2%:%time:~9,2%:@
set date_time="%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%_%time:~6,2%%time:~9,2%"
::设置显示的文件夹名称
set Folder="Logs_%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%_%time:~6,2%%time:~9,2%"
echo 日志文件夹:%Folder%
mkdir %Folder%
::获取root权限,下面pull一些隐私目录的数据需要root权限
adb remount
adb root
::创建文件夹
mkdir %Folder%\device
::获取系统的所有app服务
adb shell ps -A > %Folder%\device\ps.txt
::获取系统的cup等占用情况
adb shell top -b -n 1 > %Folder%\device\top.txt
::获取系统的cup前十个占用最多的进程信息
adb shell top -b -n 1 -H -m 10 -s 6 -o pid,tid,user,pr,ni,%%cpu,s,virt,res,pcy,cmd,name > %Folder%\device\top2.txt
::获取系统的进程内核信息
adb shell cat /proc/cmdline > %Folder%\device\cmdline.txt
::获取系统的进程内存占用信息
adb shell cat /proc/meminfo > %Folder%\device\meminfo.txt
::获取系统的cup信息
adb shell cat /proc/cpuinfo > %Folder%\device\cpuinfo.txt
::获取系统的prop属性信息
adb shell getprop > %Folder%\device\getprop.txt
::获取系统的内存大小信息
adb shell df -h > %Folder%\device\df.txt
::获取系统的当前界面截图
adb shell screencap /mnt/sdcard/Pictures/capture.png
adb pull /mnt/sdcard/Pictures/capture.png %Folder%\capture.png
::获取系统的dumpsys信息,包含dumpsys package XXX的信息
mkdir %Folder%\dumpsys
adb shell dumpsys > %Folder%\dumpsys\dumpsys.txt
::获取系统的缓存日志
adb shell logcat -v threadtime -d > %Folder%\logcat.txt
::获取系统的各目录下的日志,根据不同系统进适配
::系统Android日志
adb pull /data/misc/logm %Folder%\android_logs
::Dalvik、状态监视调试器、C层代码以及libc的一些问题导致的错误日志
adb pull /data/tombstones %Folder%\tombstones
::系统ANR异常日志
adb pull /data/anr %Folder%\anr
::系统内核日志
adb pull /sys/fs/pstore %Folder%\pstore
::系统内核应用程序崩溃数据
adb pull /data/system/dropbox %Folder%\dropbox
::系统??日志
adb pull /data/log/reliability %Folder%\reliability_system
adb pull /data/vendor/log/reliability %Folder%\reliability_vendor
::系统settings下的system、secure、global等属性
adb pull /data/system/users/0 %Folder%\settings
::获取系统的recovery信息
mkdir %Folder%\recovery
adb pull /splash2/recovery %Folder%\recovery
echo.
echo ==========log抓取完成==========
pause
adb pull 命令是取设备中的文件,取日志常用工具,基本上就是 adb pull 系统文件目录 这样可以把文件取出来。
其中android 系统日志 不同设备和手机厂商可能不一样,有些是data/android_log,这都不是重点,重点是只要我们知道日志在哪里,都可以通过adb pull 取出来。好啦,就分析到这里。
Android 开发中脚本 提高效率工具的更多相关文章
- NO.4 Android开发中常用框架及工具
android-pulltorefresh 一个强大的拉动刷新开源项目,支持各种控件下拉刷新ListView.ViewPager.WevView.ExpandableListView.GridView ...
- web开发中的 emmet 效率提升工具
web开发中的 emmet 效率提升工具 可以用来快速生成html 代码. 并且给各种IDE.编辑器提供了插件支持,sublime ,webstorm等. 如在webstorm中安装好emmet之后, ...
- Android 开发中,as或者idea对gradle的使用
原文:Android 开发中,as或者idea对gradle的使用 本文属于转载收藏,侵删,出处:私人博客 ---------------------------------------------- ...
- Android开发中,那些让您觉得相见恨晚的方法、类或接口
Android开发中,那些让你觉得相见恨晚的方法.类或接口本篇文章内容提取自知乎Android开发中,有哪些让你觉得相见恨晚的方法.类或接口?,其实有一部是JAVA的,但是在android开发中也算常 ...
- android开发中的5种存储数据方式
数据存储在开发中是使用最频繁的,根据不同的情况选择不同的存储数据方式对于提高开发效率很有帮助.下面笔者在主要介绍Android平台中实现数据存储的5种方式. 1.使用SharedPreferences ...
- Android开发中常见的设计模式
对于开发人员来说,设计模式有时候就是一道坎,但是设计模式又非常有用,过了这道坎,它可以让你水平提高一个档次.而在android开发中,必要的了解一些设计模式又是非常有必要的.对于想系统的学习设计模式的 ...
- Dagger2在Android开发中的应用
世界是普遍联系的,任何事物和个体都直接或间接相互依赖,在时空长河中共同发展.在面向对象的世界中,更是如此,类与类之间的依赖,关联关系,模块(亦或是分层架构中的层)之间的耦合关系,都是我们在软件开发实践 ...
- 讨论Android开发中的MVC设计思想
最近闲着没事,总是想想做点什么.在时间空余之时给大家说说MVC设计思想在Android开发中的运用吧! MVC设计思想在Android开发中一直都是一套比较好的设计思想.很多APP的设计都是使用这套方 ...
- 在 Android开发中,性能优化策略十分重要
在 Android开发中,性能优化策略十分重要本文主要讲解性能优化中的布局优化,希望你们会喜欢.目录 示意图 1. 影响的性能 布局性能的好坏 主要影响 :Android应用中的页面显示速度 2. 如 ...
- 在android开发中使用multdex的方法-IT蓝豹为你整理
Android系统在安装应用时,往往需要优化Dex,而由于处理工具DexOpt对id数目的限制,导致其处理的数目不能超过65536个,因此在Android开发中,需要使用到MultiDex来解决这个问 ...
随机推荐
- 从零开始学Spring Boot系列-集成MyBatis-Plus
在Spring Boot应用开发中,MyBatis-Plus是一个强大且易于使用的MyBatis增强工具,它提供了很多实用的功能,如代码生成器.条件构造器.分页插件等,极大地简化了MyBatis的使用 ...
- #李超线段树,树链剖分#洛谷 4069 [SDOI2016]游戏
题目 分析 就是把线段扔到了树上,注意区间查询要比较两个端点的函数值, 把区间赋值转换成两部分,从起点到LCA的区间是斜率为负数的线段, 从终点到LCA的区间是斜率为正数的线段. 代码 #includ ...
- 使用Python插入100万条数据到MySQL数据库并将数据逐步写出到多个Excel
Python插入100万条数据到MySQL数据库 步骤一:导入所需模块和库 首先,我们需要导入 MySQL 连接器模块和 Faker 模块.MySQL 连接器模块用于连接到 MySQL 数据库,而 F ...
- OpenHarmony Meetup 广州站 OpenHarmony正当时—技术开源
招募令 OpenHarmony Meetup 广州站 火热招募中,等待激情四射的开发者,线下参与OpenHarmonyMeetup线下交流 展示前沿技术.探讨未来可能.让你了解更多专属OpenHa ...
- SQL CREATE INDEX 语句- 提高数据库检索效率的关键步骤
SQL CREATE INDEX 语句 SQL CREATE INDEX 语句用于在表中创建索引. 索引用于比其他方式更快地从数据库中检索数据.用户无法看到索引,它们只是用于加速搜索/查询. 注意: ...
- C#对接部标JT808协议实现北斗定位设备数据接收服务端
一.前言介绍 开发一套能够支撑几万台北斗定位设备数据接收的服务端,用于接收北斗定位器定位数据的平台.项目基于windows平台,C#语言开发框架Net Framework4.8,TCP主要基于Supe ...
- 动态库 DLL 封装三:对dll二次封装,并将回调函数放出去,供别人调用
背景: 我需要对一个dll进行二次封装,其中有一个接口,里面的参数需要传回调函数. 需求: 这个回调函数,我需要开放出去,让别人调用我的dll时,自己写这个回调函数 示例: // 回调原型 VOID ...
- 重磅:FPGA实现MIPI DSI4线720P
1. 液晶屏概述 显示屏LCD MIPI DSI4 lane,支持分辨率720*1280,60HZ彩色显示.用于对接国产GOWIN的NR-9C的开发板和LATTICE的CROSSLINK开发板,显示M ...
- 基于ChatGPT打造安全脚本工具流程
前言 以前想要打造一款自己的工具,想法挺好实际上是难以实现,第一不懂代码的构造,只有一些工具脚本构造思路,第二总是像重复造轮子这种繁琐枯燥工作,抄抄改改搞不清楚逻辑,想打造一款符合自己工作的自定义的脚 ...
- Go命令行工具cobra
关于 Cobra 是 Go 的 CLI 框架.它包含一个用于创建功能强大的现代 CLI 应用程序的库,以及一个用于快速生成基于 Cobra 的应用程序和命令文件的工具. Cobra 由 Go 项目成员 ...