我的配置或代码有什么问题?
我突出显示了这个错误
'plant(timber.log.Timber.DebugTree)'方法无法解析
为代码
import timber.log.Timber;
public class AppClass extends Application {
@Override
public void onCreate() {
super.onCreate();
if (BuildConfig.DEBUG) { Timber.plant(new Timber.DebugTree()); }
}
} 但它构建并执行。我还是觉得这意味着什么,不是吗?
配置信息:
Android Studio Bumblebee | 2021.1.1
classpath 'com.android.tools.build:gradle:7.1.0'
Gradle: com.jakewharton.timber:timber:5.0.1@aar
ext.kotlin_version = '1.6.10'
sourceCompatibility JavaVersion.VERSION_1_8发布于 2022-03-16 20:32:21
直到解决了问题(如@n8yn8在问题注释中指出的那样),我才将其降级到4.7.1版本:
implementation 'com.jakewharton.timber:timber:4.7.1'发布于 2022-05-06 05:40:58
在应用程序级build.gradle文件中,设置以下jakewharton木材版本:
implementation 'com.jakewharton.timber:timber:4.7.1'然后在应用程序类onCreate()方法中:
为科特林:
if (BuildConfig.DEBUG) {
Timber.plant(DebugTree())
} else {
Timber.plant(ReleaseTree())
}适用于Java:
if (BuildConfig.DEBUG) {
Timber.plant(new DebugTree());
} else {
Timber.plant(new ReleaseTree());
}内部ReleaseTree()类Kotlin:
inner class ReleaseTree : Timber.Tree() {
override fun log(priority: Int, tag: String?, message: String, t: Throwable?) {
if (priority == Log.VERBOSE || priority == Log.DEBUG) {
return
}
// log your crash to your favourite
// Sending crash report to Firebase CrashAnalytics
// FirebaseCrash.report(message);
// FirebaseCrash.report(new Exception(message));
}
}内部ReleaseTree()类Java:
class ReleaseTree extends Timber.Tree {
@Override
protected void log(int priority, String tag, String message, Throwable t) {
if (priority == Log.VERBOSE || priority == Log.DEBUG) {
return;
}
// log your crash to your favourite
// Sending crash report to Firebase CrashAnalytics
// FirebaseCrash.report(message);
// FirebaseCrash.report(new Exception(message));
}}
发布于 2022-02-28 08:02:32
对于那些使用岗哨木的人
只管用
implementation "io.sentry:sentry-android:$sentry_version"
implementation "io.sentry:sentry-android-timber:$sentry_version"删除此依赖项
implementation "com.jakewharton.timber:timber:$timber_version"对我来说,这个修复解决了这个问题。
https://stackoverflow.com/questions/70870740
复制相似问题