Android軟件開發(fā)Log實時查看方式(無需數(shù)據(jù)線)

場景

在做Android軟件開發(fā)的時候,查看實時Log是有效的debug方式之一,如果軟件只關(guān)聯(lián)到一部手機,那使用IDE的log查看工具或者adb log都行。但如果要同時查看多部手機上的實時log,總不能搞多個筆記本在那邊adb log看吧?接下來我來介紹一個可以有效解決這個問題的工具Lolly。

Lolly

Lolly是一個開源的Android lib庫,它的主要功能就是在手機上顯示一個類似終端的窗口,然后顯示本應(yīng)用的所有l(wèi)og,并且可以根據(jù)log的優(yōu)先級和tag來過濾log,下面就來認識一下Lolly。

動圖如下:

下面看看如何在自己的工程中使用Lolly。

首先在build.gradle加入對應(yīng)依賴:

dependencies {
    ...
    compile 'com.zql.android:lolly:1.1'
}

接著在AndroidManifest.xml中注冊Lolly

        <service
            android:name="com.zqlite.android.lolly.Lolly"
            android:enabled="true"
            android:exported="false"
            android:process=":remote" />

        <activity android:name="com.zqlite.android.lolly.LollyViewer">
            <intent-filter>
                <category android:name="android.intent.category.DEFAULT" />

                <action android:name="android.intent.action.VIEW" />

                <data android:scheme="file" />
                <data android:scheme="content" />
                <data android:mimeType="text/plain" />
            </intent-filter>
        </activity>

其中Lolly是一個后臺服務(wù),用于抓取log并在窗口中顯示。LollyViewer是一個簡單的log查看器。

添加完組件后別忘了加上相應(yīng)的權(quán)限:

    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
    <uses-permission android:name="android.permission.READ_LOGS" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

上訴幾個權(quán)限在Android6.0及以上需要動態(tài)申請,這個就不贅述了,不清楚的稍后看源碼。下面看看Lolly對外提供的幾個接口:

public static void showLolly(android.app.Activity activity,
                             java.lang.String[] tags)

顯示Lolly窗口,其中tags是你需要過濾的tag數(shù)組,可以為空。

public static void hideLolly(@NotNull android.app.Activity activity)

移除Lolly窗口。

public static void saveLog(@NotNull android.app.Activity activity)

保存當(dāng)前日志到本地的lolly目錄。

上面三個接口就是Lolly對外的全部接口了,下面看一下LollyViewer的使用方法,當(dāng)使用Lolly的saveLog保存完log后,在文件管理器中點擊此文件,選擇包含了LollyViewer打開就行了,界面如下:

源碼

自然,這也是一款開源庫,github地址如下:

LollyDemo

希望Lolly能給大家?guī)硪环N新的log查看體驗。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,716評論 25 709
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,502評論 19 139
  • 最近,總是覺得做什么、看什么都會有感而發(fā),看到美女與野獸,覺得貝爾真勇敢,所以可以喝王子在一起;看歡樂好聲音,覺得...
    尹口愛巴拉閱讀 269評論 0 0
  • 陰雨了多日,中午時分,天終于放晴!陽光均勻地灑落在各處,暖暖的,令周身每一個細胞都異常活躍,在家里里外外忙乎著洗洗...
    墨語花開時閱讀 297評論 2 1
  • 在這個經(jīng)濟環(huán)境放緩的年代,我們大部分人深刻體會到,不僅僅是經(jīng)商困難,從業(yè)何嘗又不是困難?商業(yè)競爭壓力龐大,經(jīng)營壓力...
    小果先生閱讀 4,019評論 0 0

友情鏈接更多精彩內(nèi)容