Giter VIP home page Giter VIP logo

logkit's Introduction

LogKit

YdKit通用组件库

YdKit 是一组功能丰富的 Android 通用组件。

  • LogKit — 轻量级的 Android 日志系统。
  • RestfulKit — 简洁但不简单的 Android 网络组件库。
  • StorageKit — 高性能 Android 离线缓存框架。
  • ExecutorKit — 简洁易用的 Android 多线程操作框架。
  • CrashKit — 简洁易用的 Android Crash日志捕捉组件。
  • PermissionKit — 简洁易用的 Android 权限请求组件。
  • NavigationBarKit — 简洁易用的 Android 顶部导航条组件。
  • RefreshKit — 简洁易用的 Android 下拉刷新和上拉加载组件。
  • AdapterKit — 简洁易用的 Android 列表组件。
  • BannerKit — 简洁易用的 Android 无限轮播图组件。
  • MultiViewKit — 简洁易用的 Android 多视图组件。
  • TabBottomKit — 简洁易用的 Android 底部导航组件。

效果预览

动图演示效果

轻量级日志系统,支持任意类型的数据打印,堆栈的追踪,日志的缓存,日志的可视化等高级功能

导入方式

仅支持AndroidX

dependencies {
     implementation 'com.android.ydkit:log-kit:1.0.1'
}

使用方法

在application中初始化

LogConfig logConfig = new LogConfig() {
            @Override
            public String getGlobalTag() {
                //全局的tag
                return super.getGlobalTag();
            }

            @Override
            public boolean enable() {
                 //LogKit是否可用
                return super.enable();
            }

            @Override
            public boolean includeThread() {
                //是否包含线程信息
                return true;
            }

            @Override
            public int stackTraceDepth() {
                //堆栈的深度
                return 0;
            }

            @Override
            public LogPrinter[] printers() {
                //打印器
                return super.printers();
            }

            @Override
            public JsonParser injectJsonParser() {
                //外界注入对象的序列化
                JsonParser parser = new JsonParser() {
                    @Override
                    public String toJson(Object object) {
                        String json = new Gson().toJson(object);
                        return json;
                    }
                };
                return parser;
            }
        };
//初始化配置并添加控制台打印器,支持添加多个打印器
LogKitManager.getInstance().init(logConfig, new ConsolePrinter());

在需要打印Log的地方调用

LogKit.v("令狐冲");
LogKit.d("令狐冲");
LogKit.i("令狐冲");
LogKit.w("令狐冲");
LogKit.e("令狐冲");
LogKit.a("令狐冲");
LogKit.vt("tag", "风清扬");
LogKit.dt("tag", "风清扬");
LogKit.it("tag", "风清扬");
LogKit.wt("tag", "风清扬");
LogKit.et("tag", "风清扬");
LogKit.at("tag", "风清扬");

日志可视化

需要页面中创建可视化打印器ViewPrinter,然后添加到LogKitManager中

ViewPrinter viewPrinter = new ViewPrinter(this);
LogKitManager.getInstance().addPrinter(viewPrinter);

记得在onDestroy()中移除打印器,要不然会重复打印多次

LogKitManager.getInstance().removePrinter(viewPrinter);

ViewPrinter可视化打印器具体方法作用

方法 返回值 作用
showFloatingView void 打开Log悬浮框
closeFloatingView void 关闭Log悬浮框

License

Copyright [2021] [ydStar]

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

logkit's People

Contributors

ydstar avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.