自定义Xlog包名

自定义Xlog包名

1 目标:由于miniSDK内部集成了Xlog,同进程内只能写一个xlog文件,无法满足客户端日志与miniSDK日志单独写日志文件的需求。因此,为了解决同进程加载xlog的问题,决定修改Xlog的包名为com.tencent.taes.remote.impl.log。

2 准备工作

CMake3.6以上 https://github.com/Kitware/CMake/releases

Python 2.7 https://www.python.org/downloads/#pubkeys

Ndk r16b以上 https://dl.google.com/android/repository/android-ndk-r16b-windows-x86_64.zip?hl=zh_cn

Code https://github.com/Tencent/mars#mars_cn

官方接入指引:https://github.com/Tencent/mars/wiki/Mars-Android-%E6%8E%A5%E5%85%A5%E6%8C%87%E5%8D%97

3. 开始修改代码

(1)需要修改的源码,改类名+函数名

(2)修改复杂数据类型

(3)修改编译脚本

修改mars\mars\CMakeLists.txt

修改mars\mars\build_android.py

4. 开始编译,执行 python build_android.py

 

 

选择第三项 Clean && build xlog

编译完成后,在build_android.py上会生成library文件夹

 

生成so所在的文件夹是:

mars-master\mars\libraries\mars_xlog_sdk\libs\armeabi

5.接入到工程中

(1)在工程目录下建立libs,将libtaesxlog.so和libc++_shared.so复制到libs

 

(2)修改项目build.gradle配置,将so加入到项目中

(3)从mars\mars\libraries\mars_xlog_sdk\src\main\java\com\tencent

\mars\xlog中赋值Log.java和Log.java文件到对应的工程目录下,设置包名为com.tencent.taes.remote.impl.log,然后在工程中就可以正常使用Log和Xlog了。

(4)加载so并初始化xlog

 

(5)写日志

Log.setLogImp(TAG, "Xlog rename process have been finished! ");

 

大功告成!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章