A. xlog是什么文件格式以及xlog文件怎么打开
xlog文件是一种语音通话记录文件或者说是手机录音文件,由于该文件是由多个语音加密文件组成,所以该文件只能在应用中通过播放语音记录打开。
工具/材料:爱奇艺万能联播、xlog文件。
1、首先在电脑主界面中,选中“xlog文件”图标。
B. xlog是什么文件夹可以删除吗
对于用户来说,xlog文件并不是普通的log文本文件,而是一种特殊的语音通话记录文件,微信中删除了此文件,会导致此前的微信语音聊天记录丢失,如果微信语录记录不重要或者已经备份,那么这个文件是可以删除的,如果没有备份需要保留微信语音聊天记录,这个xlog文件就不能删除了。 更多关于xlog是什么文件夹可以删除吗,进入:https://m.abcgonglue.com/ask/ca9ab01615835784.html?zd查看更多内容
C. 微信记录导出后是xlog格式
xlog文件一般在微信中比较常见,它属于微信语音聊天记录的语音片段文件。
它可能有多个语音加密组成,只能在微信中通过播放语音记录打开,无法直接通过相关工具打开
删除会导致微信语音记录无法再听到,如果语音聊天记录比较重要的话,不建议删除xlog文件。
D. xlog是什么文件
xlog文件并不是所见到的一般的log日志文本文件,它是一种语音通话记录文件或者说是手机录音文件,一般在手机微信文件夹中可以找到,该文件类似QQ聊天记录文件,用户无法直接打开,即使在电脑中也无法通过记事本、播放器等工具打开。
(4)微信xlog文件夹解析扩展阅读:
比较常用的安卓模拟器有:Android SDK、BlueStacks;另外,着名的vmware虚拟机和Virtual Box虚拟机也可以模拟安卓系统。目前这些模拟器软件均可运行在微软公司的Windows操作系统平台,其中也有部分公司发布了能够运行在苹果Macos操作系统的软件版本。
Android SDK是google官方的安卓虚拟机,可用于开发,可以模拟出一个完整的安卓系统,并在电脑上进行任何手机上可行的操作,可以模拟出任何一款的安卓系统,并且拥有多种皮肤,屏幕样式可供选择,甚至可以像手机一样连接电脑,被手机助手检测到。但需要java虚拟机才能正常运行。
E. 聊聊微信 Xlog
同步地址
本文介绍 MARS xlog 使用以及使用过程中踩过的坑
xlog 是微信开源框架 MARS 的一部分, 处理应用日志
微信的对 xlog 的介绍文档--“ 微信终端跨平台组件 mars 系列(一) - 高性能日志模块xlog) ”
总结出来就是
MARS 的 GitHub 上介绍比较详细,
先跑起来一个 Demo 之后, 需要深入了解一下
mmap 是一种内存映射文件的方法,即将一个文件或者其它对象映射到进程的地址空间,实现文件磁盘地址和进程虚拟地址空间中一段虚拟地址的一一对映关系。实现这样的映射关系后,进程就可以采用指针的方式读写操作这一段内存,而系统会自动回写脏页面到对应的文件磁盘上,即完成了对文件的操作而不必再调用read,write等系统调用函数。相反,内核空间对这段区域的修改也直接反映用户空间,从而可以实现不同进程间的文件共享。
正如微信的介绍文章中所说的:
mmap 是使用逻辑内存对磁盘文件进行映射,中间只是进行映射没有任何拷贝操作,避免了写文件的数据拷贝。操作内存就相当于在操作文件,避免了内核空间和用户空间的频繁切换。
mmap几乎和直接写内存一样的性能,而且 mmap 既不会丢日志,回写时机对我们来说又基本可控。
上文中有关于该方法的源码分析, 总结来说
因为 Android 手机 CPU 架构的差异, 可能会有很多版本的 so 文件, 如果你是使用本地编译 xlog 的, 你应该注意对应不同 CPU 架构编译不同的 so 文件
本地编译的 so 文件放在 src/jniLibs 目录下, AS 可以自动编译到 apk 中
我的坑主要是因为 xposed 的原因, 刚开始 Demo 很顺利, 接入到项目中问题就一个个的
上文以及提到会在哪里加载 so 文件, 但是由于 xposed 的原因, Classloader 指向的文件为 /data/app/io.communet.ichater-2/base.apk , 不能找到指定的 so 文件, 所以需要指定绝对路径
解决:
微信有提到关于日志同步和异步两种写入方式以及日志文件的存储位置
实际运行中发现, 当同步写入时, 日志文件开始会被存放在 cacheDir, 一段时间后, 会被放到 logDir, 但是异步模式下, 文件一直放在 cacheDir, 即便调用 appenderFlush 方法, 日志会从 mmap 中写入文件, 但是文件的位置还是在 cacheDir, 当然, 应用有读写 SDCard 的权限
解决:
该问题还未查明原因, 目前的解决方法是不给 cacheDir, 文件会被直接放到 logDir, 但是, 官方说如果不给 cacheDir, 可能出现 SIGBUS, 参见 issue#249
2019/4/17更新: 解决了, 说起来都惭愧, 还有一个参数
将该值设置为 0 即可, 之前以为这个值表示的是缓存日志保存的天数, 设置了 7, 实际上保留缓存日志的天数默认 10 天, 清理逻辑如下
注意和上文中的那个 BUG 区分, 这里是因为用 32 位的 so 代替 64 位的 so 导致的
解决:
jniLibs 下面不要放 64 位的, 只放 32 的, 可以兼容
还有坑的话继续更新
F. xlog是什么文件格式以及xlog文件怎么打开
xlog文件并不是普通的文本文件,因此无法通过记事本等工具打开,使用记事本等文本工具打开显示的则全为乱码。xlog文件一般需要借助虚拟安卓平台打开,比如安卓模拟器等,打开比较困难。
在微信中,xlog文件就相当于QQ的聊天记录文件,是通过加密的一种语音文件,普通工具很难打开,但是如果你把微信中的xlog文件删除,那么微信以前的语音通话记录也就不能再听了。