C.B*_*.B. 16 android timber-android
我的配置或代码有什么问题?
我突出显示了此错误
无法解析方法“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()); }
}
}
Run Code Online (Sandbox Code Playgroud)
但它会构建并执行。我仍然认为这意味着什么,不是吗?
配置信息:
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
Run Code Online (Sandbox Code Playgroud)
Sol*_*ata 17
直到问题解决(如问题评论中@n8yn8所述),我通过降级到版本 4.7.1 解决了这个问题:
implementation 'com.jakewharton.timber:timber:4.7.1'
Run Code Online (Sandbox Code Playgroud)
关于Timber 的 GitHub Issue #459有一些进一步的讨论。看来是IDE相关的问题。据确认,目前 Timber 5+ 还没有针对纯 Java 代码的解决方案。
Chi*_*orn 11
对于无需降级依赖版本且无需通过继续应用JakeWharton中的依赖来应用另一个依赖的解决方案,我们可以尝试在Kotlin而不是Java类中配置Timber ,因为警告消息仅出现在 Java 类上。
通过这样做,您可以尝试以下两种选择:
请参阅我的示例,了解下面的第二个选项:
TimberUtils.kt
import timber.log.Timber
object TimberUtils {
@JvmStatic
fun configTimber() {
if (BuildConfig.DEBUG) {
Timber.plant(Timber.DebugTree())
}
}
}
Run Code Online (Sandbox Code Playgroud)
YourCustomJavaClass.java
@Override
public void onCreate() {
super.onCreate();
TimberUtils.configTimber();
}
Run Code Online (Sandbox Code Playgroud)
希望它能解决您的问题。
Emm*_*ali -1
对于那些使用哨兵木材的人
只需使用
implementation "io.sentry:sentry-android:$sentry_version"
implementation "io.sentry:sentry-android-timber:$sentry_version"
Run Code Online (Sandbox Code Playgroud)
删除此依赖项
implementation "com.jakewharton.timber:timber:$timber_version"
Run Code Online (Sandbox Code Playgroud)
对我来说,此修复解决了问题
| 归档时间: |
|
| 查看次数: |
5209 次 |
| 最近记录: |