Android dump数据到文件

wechat-dump 实战:3步从已root安卓设备提取微信聊天数据库与资源文件 本文详细介绍了使用wechat-dump工具从已root安卓设备提取微信聊天数据库与资源文件的完整流程。通过3个关键步骤:环境配置、数据库定位与提取、数据库解密,帮助用户高效获取微信数据,并提供了常见问题解决方案与安全合规建议。 阅读详情
void writepcmtofile(const char * fname,const void* buffer, size_t bytes)
{
      static FILE *fp=NULL;
      if(fp==NULL || access( fname, F_OK )==-1){
       fp = fopen(fname, "ab+" );
       if(fp==NULL){
       ALOGI("can't open file!");
                 fp=NULL;
                 return;
       }
   }
      if(fp!=NULL){
          fwrite(buffer , 1 , bytes , fp );
          ALOGI("write to file %d bytes",bytes);
   }
}

注意,File设置为static的目的是为了更快,但是两个地方同时使用这个函数的时候,因为File只有一个,就会有问题。所以应该改成非静态的。

Android录音,播放,dump数据位置:

ssize_t AudioFlinger::PlaybackThread::threadLoop_write() {
... ...
ssize_t framesWritten = mNormalSink->write(
            (char *) mSinkBuffer + offset, count);
writepcmtofile("/data/test/play.pcm",(int8_t *)inShort, lengthIn * 2);
}
bool AudioFlinger::RecordThread::threadLoop() {
    if (mPipeSource != 0) {
        ......
        }
        // otherwise use the HAL / AudioStreamIn directly
    } else {
        ssize_t bytesRead = mInput->stream->read(mInput->stream,
                (uint8_t*) mRsmpInBuffer + rear * mFrameSize, mBufferSize);
        writepcmtofile("/data/test/clean.pcm",(uint8_t*) mRsmpInBuffer + rear * mFrameSize, bytesRead);
}

如果写不成功,很可能是因为seLinux,这时候写到/user/data下,并设置
adb shell setenforce 0

Java里面的写法:

public static void writeToFile(byte[] mBuffer, String filename, boolean encoded, int quality) {
if (Dbg.isVerbose() || true) {
    try {
        boolean logDirExists;
        String folder = Dbg.LOG_DIR;
        if (!folder.endsWith(File.separator)) {
            folder += File.separatorChar;
        }
        File f = new File(folder);
        if (!f.exists()) {
            logDirExists = f.mkdirs();
        } else {
            logDirExists = true;
        }
        if (!logDirExists) {
            return;
        }
        String path = folder + filename;
        if (encoded) {
            path += "_q" + quality + ".speex";
        } else {
            path += ".pcm";
        }
        File file = new File(path);
        // if file doesnt exists, then create it
        if (!file.exists()) {
            file.createNewFile();
        }
        FileOutputStream stream = new FileOutputStream(file.getAbsoluteFile(), true);
        try {
            stream.write(mBuffer);
        } finally {
            stream.close();
        }
    } catch (IOException e) {
        Log.e("Audio Dump", "Exception", e);
    }
}
}
[RK3288][Android6.0] 调试笔记 --- display数据帧的dump Platform: Rockchip OS: Android 6.0 Kernel: 3.10.92步骤: 1. 打开dump功能 hardware/rockchip/hwcomposer/rk_hwcomposer.h #define hwcDumpSurface 1 2. 设置property #setprop sys.dump true 这时logcat中就可以看到dum 阅读详情

相关推荐

安卓逆向核心:DEX文件结构解析与实战逆向工具链指南

在移动应用开发与安全分析领域,理解应用的底层执行逻辑至关重要。安卓应用的核心可执行代码并非直接以Java源码形式存在,而是被编译为Dalvik字节码,并封装在DEX(Dalvik Executable)文件中。DEX文件作为Android Runtime(ART)或Dalvik虚拟机执行的基石,其结构设计决定了应用的运行机制。从原理上看,一个DEX文件包含严谨的文件头、索引区(如字符串、类型、方法索引)和数据区(类定义、代码项),这种结构不仅承载了程序的执行逻辑,也是实现代码混淆(如ProGuard重命名)

weixin_33922672的博客 431

adb循环输出内存信息到文件夹

adb循环输出内存信息到文件夹 while true;do cat proc/meminfo| grep Mem >> data/data/memtotal.txt;sleep 1;done ##注意 : > 会覆盖上次输出 1.常见的shell命令记录 查看内存信息 dumpsys meminfo 查看应用启动时间 adb logcat -c && adb logcat -f /mnt/sdcard/up.txt -s ActivityMana

qq_44203816的博客 867

Android14音频进阶之dump各阶段音频数据<Tee Sink方案>(七十五)

本篇目的:Android14音频进阶之dump各阶段音频数据Tee Sink是一种AudioFlinger调试功能,可以在系统源码中使用,它支持dump AudioFlinger各个音频处理阶段的数据。Android 5.x、Android 6.x与Android 7.x以上版本dump目录区别Android 5.x 和 6.x版本dump目录:/data/misc/mediaAndroid 7.x +版本dump目录:/data/misc/audioserver。

Android系统攻城狮 2605

Android Service dump使用

dumpsys是Android用来查看后台Service状态的工具,在我们分析调试问题时,非常好用,避免每次修改都要加log然后编译。 可以借助这个命令列出当前有哪些service可以进行dump分析 # dumpsys | grep "DUMP OF SERVICE" DUMP OF SERVICE SurfaceFlinger: DUMP OF SERVICE accessibility: D...

虎哥LoveDroid 7499

Android堆Dump文件分析,测试Demo

用于Android 堆Dump文件分析的Demo测试程序

C++ 生成Dump文件

利用C++生成Dump文件,以后程序崩溃了,可以找到哪个函数出的问题。非常好用,企业级的应用!

android dump.txt,Android中dump的使用

由于dumpsys命令只能dump出有限的几个service,例如SurfaceFlinger,window那么其他类中的dump函数如何使用呢以WindowManagerService相关的WindowState和WindowAnimator为例PrintWriter pw = new PrintWriter(System.out, true);WindowState win = windows...

weixin_34666478的博客 857

不同比例尺地质数据共享

包含20w、25w、100w、250w比例尺地质数据共享。

sinat_38828898的博客 2309

ADB读取日志

ADB读取日志: 1、 查看连接的设备 adb devices 2、 查看设备连接状态 adb get-state 3、 查看应用列表 adb shell pm list packages 查看所有的应用包名 adb shell dumpsys activity 查看当前活动的包的信息 adb shell dumpsys window | findstr mCurrentFocus 查看正在运行的包名 4、查看该app对手机内存的占用情况,执行结果里面会出现该app的进程编号(pid) adb shel

weixin_36410810的博客 660

HAL库硬件SPI驱动ST7735 TFT屏幕:从零实现高效刷屏与图形绘制

本文详细介绍了如何使用STM32的HAL库硬件SPI驱动ST7735 TFT屏幕,从硬件连接到SPI配置优化,再到图形绘制与文本显示的实现。重点分享了DMA传输、局部刷新等高级优化技巧,显著提升刷屏效率,帮助开发者快速掌握屏幕驱动技术并应用于实际项目。

pink的博客 741

在Proteus中用80C51模拟4线SPI点亮OLED屏幕

在Proteus里用80C51模拟4线SPI控制OLED屏幕使其显示图案(汇编实现)。

Connor3093的博客 5003

Android日志获取与解析

logcat是一个命令行工具,用于转储系统消息日志,包括设备抛出错误时的堆栈轨迹,以及从所有应用中使用 Log 类写入的消息。

WEB___的博客 5572

【Matlab 六自由度机器人】基于改进型D-H参数的运动学建模与蒙特卡洛工作空间分析

本文详细介绍了如何使用改进型D-H参数法为六自由度机器人建立运动学模型,并利用Matlab Robotics Toolbox实现正运动学计算与可视化。通过蒙特卡洛法对机器人工作空间进行分析,生成三维点云图以直观展示其可达范围,为机器人选型与任务规划提供关键依据。

weixin_29040367的博客 439

android dump 分区

有的时候需要dump分区的raw data(没有文件系统)进行分析   /* * out put raw partition image */ #include #include #include #include #include #include #include #define PRELOADER "/dev/preloader"

李子的备忘录 2779

手把手教你玩转CPU微架构专栏--​​​​1.5 工具准备:用Gem5模拟器“看见”微架构(安装、基础仿真命令)​

本文介绍了如何使用Gem5模拟器进行微架构学习和实验。Gem5是一款支持多种指令集的开源微架构模拟器,可模拟CPU流水线、缓存等核心组件。文章详细说明了在Ubuntu和macOS上安装Gem5的步骤,包括依赖安装、源码编译和验证方法。通过一个简单的加法指令测试程序,演示了如何运行基础仿真并解读输出日志,包括指令执行流程和性能统计数据。此外,还提供了两个实战实验:修改L1缓存大小和观察分支预测失败,帮助读者理解微架构参数对性能的影响。最后指出Gem5是学习微架构的"显微镜",能直观观察指令

xiaoheshang_123的博客 140

cartographer运行错误集合

播放bag的时候错误 Check failed: sensor_to_tracking->translation().norm() < 1e-5 The IMU frame must be colocated with the tracking frame. Transforming linear acceleration into the tracking frame will otherwise be imprecise tracking frame不是imu的link 修改lua文件中的.

Studying…… 2020

微信聊天记录导出终极指南:3步将Android微信数据转为精美HTML

你是否曾因为微信聊天记录无法导出而烦恼?重要的工作对话、珍贵的回忆照片、关键的语音消息都困在手机里无法备份?wechat-dump正是为解决这一痛点而生的开源工具,它能将Android微信聊天记录完整导出为可离线浏览的HTML文件,支持文字、图片、语音、表情包等所有消息类型,让你轻松备份和查看聊天历史。 ## 你的聊天记录管理难题,我们这样解决 微信作为国内最流行的即时通讯工具,却未提供官方的

gitblog_00251的博客 535

VAY 是 SAP 自动科目确定(OBYC-GBB)中的科目修改码,专用于带科目分配对象的销售订单发货场景,核心是触发 “Dr 成本要素科目(如销售费用 / 特定成本对象) Cr 库存商品” 的分录,

摘要:VAY是SAP中用于带科目分配对象(如成本中心、WBS)的销售订单发货的科目修改码,与标准VAX场景不同,它生成"借成本要素科目/贷库存商品"的分录。配置路径为OBYC-GBB-VAY,需确保借方科目为成本要素。典型业务场景包括免费样品、项目专用发货等。常见问题包括VAY未触发或科目记账错误,需检查销售订单科目分配、移动类型设置及OBYC配置。特殊场景建议单独配置科目以便费用分析。

金牌架构师 1253

Android CamerHal dump 数据流

Platform: Rockchip OS: Android 6.0 Kernel: 3.10.92 说明: 1. 默认关闭,通过设置property debug.camera.preview为1 来打开 2. /data/下的dump目录需要自己创建,权限设置为777或者是media用户 3. dump出来的数据不用工具直接可以查看 4. 每设置一次property会dump一帧,文件名包含分...

mjfh095215的专栏 579

标准测试测试数据STDF学习笔记

本文介绍了STDF(Standard Test Data Format)文件的结构与解析方法。首先详细说明了STDF记录的组成,包括记录头类型(REC_TYP和REC_SUB)、数据类型定义、时间日期格式以及无效数据标识。重点分析了25种主要记录类型的功能、数据内容和出现位置,如FAR、MIR、MRR等关键记录。然后介绍了基于pystdf开源工具的解析方法,包括自带脚本的使用和自编程解析流程,通过事件驱动机制处理数据流。特别指出测试数据是按照PIR→PTR/MPR/FTR→PRR的循环模式组织。文章为ATE

歌颂苦难的行为是无耻的; 1513

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Camx-Dump Raw Frames

qcom dump raw pic

h_8410435的博客 1719

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

[RK3288][Android6.0] 调试笔记 --- Camera Preview原始数据帧dump

Platform: Rockchip OS: Android 6.0 Kernel: 3.10.92说明: 1. 默认关闭,通过设置property debug.camera.preview为1 来打开 2. /data/下的dump目录需要自己创建,权限设置为777或者是media用户 3. dump出来的数据不用工具直接可以查看 4. 每设置一次property会dump一帧,

Kris Fei's blog 3243

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

android内存dump分析,[原创]梆梆加固之防内存dump分析

 声明(打字好累)本文仅限于技术讨论,不得用于非法途径,后果自负。 参考资料https://bbs.pediy.com/thread-206293.htmhttps://github.com/parkerpeng/DroidAntihttp://blog.youkuaiyun.com/cool_way/article/details/22827433http://blog.youkuaiyun.com/m...

weixin_39693971的博客 875

[RK3288][Android6.0] Audio播放时的pcm数据dump思路

Platform: Rockchip OS: Android 6.0 Kernel: 3.10.92 其实这块RK已经写了,不过它的思路很好,即通过动态调节property而来决定是否需要dump data,这样的话在不用reboot的情况下就可以拿数据了,适合处理once的bug,其他模块也可以用这个思路。 static ssize_t out_write(struct audio_

Kris Fei's blog 4001

Android逆向系列--Dump So文件

AndroidDump内存中的数据,比如so文件

Tasfa的博客 5170

graphics buffer保存成图片

Android 图像显示系统 - 导出图层数据的方法介绍(dump GraphicBuffer raw data)高通Android平台-应用空间操作framebuffer dump LCD总结。Android GraphicBuffer的dump保存成yuv文件。

lin20080410的专栏 667
上一篇: 在Android中使用第三方的库
下一篇: DTD算法
我把葡萄酿成酒
博客等级 码龄12年 275粉丝 198原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值