Android AppWidget Timber未记录

问题描述 投票:2回答:2

我正在尝试从标准日志切换到Timber,以便在将应用程序部署到Google Play时轻松删除日志消息,但无法正常工作

build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 22
    buildToolsVersion "22.0.1"

    defaultConfig {
        applicationId "org.myapp"
        minSdkVersion 16
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
    }
}

buildscript {
    repositories {
        jcenter()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:1.1.3'
    }
}

repositories {
    mavenCentral()
}

dependencies {
    compile 'com.jakewharton.timber:timber:3.1.0'
}

MyApp.java

package org.myapp;

...

import timber.log.Timber;
import static timber.log.Timber.DebugTree;

public class MyApp extends AppWidgetProvider {

  @Override
  public void onEnabled(Context context) {
    super.onEnabled(context);

    if (MyBuildConfig.DEBUG) {
      Timber.plant(new DebugTree());
    } else {
      //Timber.plant(new CrashReportingTree());
    }

    Timber.d("MyApp.onEnabled");
  }

MyBuildConfig.java

package org.myapp;

public class MyBuildConfig {
  public static final boolean DEBUG = true;
}

该应用程序可以很好地编译

./gradlew assembleDebug

但在这样做时>>

adb logcat | grep -i thing

我的调试语句不存在。

我仍然希望看到带有调试apk的调试消息,而不是带有发行apk的调试消息,这是怎么回事?

为了将我的应用程序部署到Google Play时轻松删除日志消息,我正在尝试从标准日志切换到木材,但是它无法正常工作build.gradle apply plugin:'com.android ....

android android-appwidget
2个回答
7
投票

移动中


4
投票

我相信是因为Timber在您的AppWidgetProvider中找不到标签。尝试像这样种植树:

© www.soinside.com 2019 - 2024. All rights reserved.