一個(gè)簡(jiǎn)易的埋點(diǎn)解決方案

XMark

一個(gè)簡(jiǎn)易的埋點(diǎn)解決方案(基于JakeWharton的hugo基礎(chǔ)上改造)

項(xiàng)目地址

特點(diǎn)

  • JakeWharton的hugo的所有特點(diǎn)。

  • 內(nèi)置默認(rèn)的logcat打印突破了4000的打印限制。

  • 支持日志的自定義打印(不僅簡(jiǎn)單的Logcat)。你可以使用我的XLog進(jìn)行擴(kuò)展。

  • 支持設(shè)置日志的打印權(quán)限。

1、演示(請(qǐng)star支持)

演示

2、如何使用

目前支持主流開(kāi)發(fā)工具AndroidStudio的使用,直接配置build.gradle,增加依賴即可.

2.1、Android Studio導(dǎo)入方法,添加Gradle依賴

1.先在項(xiàng)目根目錄的 build.gradle 的 repositories 添加:

allprojects {
    repositories {
        ...
        maven { url "https://jitpack.io" }
    }
}

2.再在項(xiàng)目根目錄的 build.gradle 的 dependencies 添加xmark插件:

buildscript {
    ···
    dependencies {
        ···
        classpath 'com.github.xuexiangjys.XMark:xmark-plugin:1.0.1'
    }
}

3.在項(xiàng)目的 build.gradle 中增加依賴并引用xmark插件

apply plugin: 'com.xuexiang.plugin.xmark' //引用xmark插件

dependencies {
    ···
    implementation 'com.github.xuexiangjys.XMark:xmark-runtime:1.0.1'  //添加依賴
}

2.2、設(shè)置日志是否打印


XMark.debug(true); //默認(rèn)是false

2.3、使用@MarkLog進(jìn)行埋點(diǎn)

1.記錄方法的執(zhí)行

priority: 打印日志的優(yōu)先級(jí)

@MarkLog
private void printDemo1(String lab, String name) {
    Log.d("printing", lab + name);
}

@MarkLog(priority = Log.ERROR)
private String printDemo2(String lab, String name) {
    return lab + name;
}

2.記錄類的創(chuàng)建

@MarkLog
static class Greeter {
    private final String name;

    Greeter(String name) {
        this.name = name;
    }

    private String sayHello() {
        return "Hello, " + name;
    }
}

2.4、修改日志的打印方式

可在應(yīng)用初始化的Application下進(jìn)行如下操作:

XMark.setLogger(new ILogger() {  //設(shè)置日志打印的實(shí)現(xiàn)接口
    @Override
    public boolean isDebug() {
        return false;
    }

    @Override
    public void debug(boolean isDebug) {

    }

    @Override
    public void log(int priority, String tag, String msg) {
        ···打印的方法
    }
});

特別感謝

https://github.com/JakeWharton/hugo

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

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