Android 日誌工具:項目模塊較多時的救星

在項目開發中,遇到一個痛點:項目模塊較多,不一樣日誌混合在一塊兒;出現線上問題時,全部日誌信息混合在一塊兒,定位困難。
爲解決這個問題,有了這個工具。這個工具備如下做用:git

  • 開發模式debug 爲 true 時,打印在控制檯,同時打印到文件;
  • 發版模式debug 爲 fase 時,只打印到文件;
  • 方便日誌上傳 支持日誌壓縮上傳
  • 緩存文件 區分模塊 支持不一樣功能模塊,日誌打印到不一樣文件中;

第一次看文章的朋友能夠關注我,會不按期發佈大廠面試題、Android架構技術知識點及解析等內容,還有學習PDF+源碼筆記+面試文檔+進階視頻分享github

平時的學習內容放在了個人GitHub:https://github.com/Meng997998/AndroidJX面試

Android 日誌工具:項目模塊較多時的救星

1、使用舉例

日誌輸出到控制檯

Android 日誌工具:項目模塊較多時的救星

不一樣模塊日誌 分別打印到對應文件

Android 日誌工具:項目模塊較多時的救星

對應文件中的日誌

Android 日誌工具:項目模塊較多時的救星

壓縮後的日誌文件路徑

Android 日誌工具:項目模塊較多時的救星

2、使用方式

  • 初始化
  • 打日誌
  • 文件壓縮上傳
2.一、初始化

初始化建議放到Application中緩存

/**
 * 初始化日誌
 */
private void initLog() {
    // 這裏網絡模塊、UI模塊的Debug模式爲true
    PalUiLog.init(MainApplication.this, true);
    PalNetLog.init(MainApplication.this, true);
}
2.二、打日誌
// UI模塊日誌:打印到控制檯;同時打印到文件;
PalUiLog.d(TAG, "---onCreate---");
// 網絡模塊日誌:打印到控制檯;同時打印到文件;
PalNetLog.d(TAG, "---onCreate---");
2.三、文件壓縮上傳
// 耗時操做,建議異步任務調用該方法
private void zipLogFiles() {
    // 壓縮App內部存儲目錄下的日誌文件
    File file = ZipLogFile.zipLogFiles(MainActivity.this);
    // 若壓縮成功,返回對應的文件
    if (file != null) {
        Toast.makeText(MainActivity.this, "日誌文件生成成功:" + file.getAbsolutePath(),
                Toast.LENGTH_LONG).show();
    }
}
相關文章
相關標籤/搜索