adb install

@echo off
mode con cols=108 lines=5

adb wait-for-device
adb install -r -t -g -d  %1
installApk.bat

同步系统时间

@echo off
mode con cols=108 lines=5

color f2


adb root
adb shell adbd1234
adb remount
adb disable-verity

adb shell date "%Date:~0,4%-%Date:~5,2%-%Date:~8,2%"
adb shell date "%time:~0,2%:%time:~3,2%"
adb remount

pause
setTime.bat

打开系统设置

adb root
adb shell adbd1234
adb shell FFFFFFFF
adb shell am start -W com.android.car.settings/.Settings_Launcher_Homepage
pause
startsettings.bat

将xls表格转换成json数据,json格式为{ "list": [{"id": 0,"r": 0,"g": 84,"b": 255},...]}

import pandas as pd
import json
import os
import sys
import subprocess
import importlib.util

def check_dependencies():
    """检查并安装必要的依赖库"""
    required_libs = ['pandas', 'openpyxl']
    missing_libs = []
    
    for lib in required_libs:
        if importlib.util.find_spec(lib) is None:
            missing_libs.append(lib)
    
    if missing_libs:
        print("正在安装必要的Python库...")
        try:
            # 安装缺失的库
            subprocess.check_call([sys.executable, "-m", "pip", "install"] + missing_libs)
            print("库安装完成!")
            return True
        except subprocess.CalledProcessError:
            print(f"安装失败,请手动运行: pip install {' '.join(missing_libs)}")
            return False
    return True

def excel_to_json(file_path):
    try:
        # 读取Excel文件
        df = pd.read_excel(file_path)
        
        # 转换为列表格式
        result_list = []
        for index, row in df.iterrows():
            # 根据您的需求映射列名
            item = {
                "id": int(row.iloc[0]) if pd.notna(row.iloc[0]) else 0,
                "r": int(row.iloc[1]) if pd.notna(row.iloc[1]) else 0,
                "g": int(row.iloc[2]) if pd.notna(row.iloc[2]) else 0,
                "b": int(row.iloc[3]) if pd.notna(row.iloc[3]) else 0
            }
            result_list.append(item)
        
        # 创建最终的JSON结构
        final_json = {
            "list": result_list
        }
        
        # 生成输出文件名
        base_name = os.path.splitext(file_path)[0]
        output_file = f"{base_name}.json"
        
        # 保存为JSON文件
        with open(output_file, 'w', encoding='utf-8') as f:
            json.dump(final_json, f, indent=2, ensure_ascii=False)
        
        print(f"转换成功!输出文件: {output_file}")
        return True
        
    except Exception as e:
        print(f"转换失败: {str(e)}")
        return False

def main():
    # 检查依赖
    if not check_dependencies():
        input("按回车键退出...")
        return
    
    if len(sys.argv) < 2:
        print("请拖拽Excel文件到此Python文件上")
        input("按回车键退出...")
        return
    
    file_path = sys.argv[1]
    
    if not os.path.isfile(file_path):
        print(f"错误:不是文件: {file_path}")
        input("按回车键退出...")
        return
    
    if not (file_path.lower().endswith('.xls') or file_path.lower().endswith('.xlsx')):
        print(f"错误:不是Excel文件: {os.path.basename(file_path)}")
        input("按回车键退出...")
        return
    
    print(f"正在处理文件: {os.path.basename(file_path)}")
    excel_to_json(file_path)
    input("\n按回车键退出...")

if __name__ == "__main__":
    main()
convert_xls_to_json.py

image

将表格中前四列转换成json格式,直接将表格文件拖到脚本文件即可

删除文件夹

adb wait-for-device
adb root
adb remount
adb shell setprop persist.log.tag V
adb shell settings put system pointer_location 1
adb shell settings put system show_touches 1
adb shell rm -rf /mnt/log/ANDROID
adb shell rm -rf /data/vendor/nfs/mount/qlog/qlog
adb shell rm -rf /data/vendor/nfs/mount/qlog/vip
adb shell rm -rf /data/vendor/nfs/mount/fota/dhu/log
adb shell rm -rf /data/vendor/nfs/mount/fota/fota/log
pause
清除日志.bat

Monkey脚本

@echo on

cd /d %~dp0
adb root
adb remount

adb shell setprop persist.logd.size 64M
adb shell setprop persist.log.tag V
adb shell setprop log.tag.stats_log V

::adb shell "monkey --pkg-blacklist-file /data/whitelist.txt --pct-syskeys 0 --pct-touch 30 --pct-rotation 0 --ignore-crashes --ignore-native-crashes --ignore-timeouts --ignore-security-exceptions --kill-process-after-error --throttle 250 -s 2 -v -v -v 900000000 2>/sdcard/error.txt 1>/sdcard/info.txt &"

adb shell "monkey --pct-syskeys 0 --pct-touch 30 --pct-rotation 0 --ignore-crashes --ignore-native-crashes --ignore-timeouts --ignore-security-exceptions --kill-process-after-error --throttle 250 -s 2 -v -v -v 900000000 2>/sdcard/error.txt 1>/sdcard/info.txt &"


pause
Monkey_Bench.bat
@echo off


echo rm /data/start.tag...
adb shell "rm /data/start.tag"

echo kill monkey...
adb shell "ps -ef | grep monkey | grep -v grep | awk '{print $2}' | xargs kill -9"
adb shell "ps -ef | grep monkey | grep -v grep"

echo kill dmesg...
adb shell "ps -ef | grep dmesg | grep -v grep | awk '{print $2}' | xargs kill -9"
adb shell "ps -ef | grep dmesg | grep -v grep

setlocal

REM 获取当前日期和时间的各个组成部分
for /F "tokens=1-6 delims=/:. " %%a in ("%date% %time%") do (
  set "year=%%c"
  set "month=%%a"
  set "day=%%b"
  set "hour=%%d"
  set "minute=%%e"
  set "second=%%f"
)

REM 格式化日期和时间
set time=%day%%year%%hour%%minute%%second%

REM 输出格式化后的时间
echo 当前时间是:%time%


md .\%time%
md .\%time%\mirror_files

set string=./%time%

echo 检查是否连接设备.....
adb wait-for-device

echo 设备连接成功,开始抓取.....
adb root

echo ----- 开始抓取日志和镜像文件 -----

adb shell "dumpsys activity top | grep ACTIVITY | tail -n 1"
for /f "delims=" %%t in ('adb shell "dumpsys activity top | grep ACTIVITY | tail -n 1 |awk '{print $2}' |awk -F '/' '{print $1}'"') do set str=%%t
echo 进程名:%str% 
for /f "delims=" %%i in ('adb shell "dumpsys activity top | grep ACTIVITY | tail -n 1 |awk '{print $2}' |awk -F '/' '{print $1}' |xargs pidof"') do set pid=%%i
echo 进程号:%pid% 
echo 版本信息:
adb shell "pm dump %str% | grep version"

adb shell dumpsys meminfo > %string%/mirror_files/dumpmeminfo.txt
adb shell dumpsys meminfo %str% > %string%/mirror_files/dumpmeminfo_%str%.txt
adb shell showmap %pid% > %string%/mirror_files/showmap.txt
adb pull proc/%pid%/smaps  %string%/mirror_files
adb shell am dumpheap %str% /data/local/tmp/%str%.hprof
adb pull /data/local/tmp/%str%.hprof  %string%/mirror_files

echo ----- 日志和镜像文件抓取结束 -----
echo ----------------------------------

echo ----- 开始抓取Android日志 -----
adb pull /data/misc/logd %string%
adb pull /sdcard/error.txt %string%
adb pull /sdcard/info.txt %string%
adb pull /data/system/dropbox %string%
adb pull /data/tombstones %string%
adb pull /data/anr %string%
adb pull /data/pmem_state %string%
adb pull /data/dmesg.log %string%
adb pull /data/slog.log %string%
adb pull /data/pmem-state_qnx %string%
adb pull /data/systeminfo %string%
adb pull /data/monkeytest %string%
adb pull /data/screencap %string%

echo 日志保存路径: %string%

echo ----- 抓取结束! -----
exit
MonkeyStop_LogUpload.bat

 

posted on 2025-10-30 17:26  翻滚的咸鱼  阅读(12)  评论(0)    收藏  举报