问题标签 [timber-android]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 如何告诉 Timber 哪个日志调用是针对哪个树的?
我有用于日志记录和与崩溃报告服务合作的 Timber 库,并且我的应用程序中有 Crashlytics 和 Loggly 服务。
因此,我不得不种两棵树:
现在,每次我打电话:
我在 Loggly 中获取了所有日志,但我希望其中一些进入 Loggly,其中一些进入 Crashlytics,那么我该怎么做呢?
android - 在哪里初始化木材和 crashlytics
我的应用程序执行大量后台任务并且活动很少,并且大部分工作都是在后台完成的。
假设我将木材和 Crashlytics 添加到我的应用程序中。我如何确保在设备上更新应用程序时,木材和 Crashlytics 在没有打开活动的情况下被初始化。
android - 使用 Timber 时标签为空
记录日志时DebugTree
,我看到类名,但是当我创建自定义树时,标签是null
. 这是我的自定义树的样子:
然而,即使来自 DebugTree,生成的标记也是BaseActivity
因为它确实来自BaseActivity
但是我想知道是否有一种方法可以获得扩展 BaseActivity 的类的名称
android - 在 Timber 中记录方法名称和行号
是否可以使用 Timber 库记录当前行号和方法名称?
预期的 LogCat 结果:
java - 新木材版本 4.1.2 的 Stetho-Timber 库问题
当我尝试在我的 Android 应用程序中使用 stetho-timber 库时,我遇到了这个问题:
错误:模块 'com.facebook.stetho:stetho-timber:1.3.1' 依赖于一个或多个 Android 库,但它是一个 jar
怎么了?!
android - 防止 FirebaseCrash.logcat() 记录到 logcat
我在我的应用程序中使用 Timber 和DebugTree
. 我想将所有消息记录到 Firebase 崩溃报告。
但是现在所有消息都在 logcat 中重复,看起来像这样
我不想保护调用,if (BuildConfig.DEBUG) { ... }
因为日志也应该附加到调试版本中发生的崩溃。
Fabric 具有相同的行为,但我可以将记录器设置为静默.logger(new SilentLogger())
,以防止重复的日志消息。Firebase 有 API 吗?
android - 皮棉:ClassNotFound:com/android/tools/lint/detector/api/Detector$JavaPsiScanner
Timber (V 4.5.0) lint 检查只能通过Gradle 工作(但不能通过lint
命令,也不能在 Android Studio 版本 2.3 Beta2 中工作)。
概括
当我lint
直接在命令行上运行时,我得到一个错误。
但是当我通过gradle调用它时它可以工作:
详细说明
我在 GitHub 上做了一个小示例项目:TimberLintTest
基本上我是这样做的:
- 在 Android Studio 中创建了一个简单的 Android 项目
- 添加木材
- 为 lint 错误激活 stdout 输出
android { lintOptions { textReport true textOutput "stdout" } }
在MainActivity我使用这样的错误日志语句:
当我从命令行通过 Gradle-wrapper 执行 lint 时,它按预期工作 - 剥离输出:
但是这些检查在 Android Studio 中不起作用,当我lint
直接开始时也不起作用。
互联网上的一些消息来源表明我们必须将lint.jar
文件复制到~/.android/lint
. 我为 lint.jar (from timber-4.5.0
) 执行此操作并将其重命名为timber-lint.jar
,因此我最终得到了这个文件:
所以问题是找不到这个JavaPsiScanner
接口。
我检查了 Timber 源代码,它取决于包含此内部接口的lint-api-25.0.2
位置。Detector
但是在我的本地 SDK 代码 ( Android/Sdk/tools/lib/lint-api.jar
) 中,这个内部类不存在(我猜这是lint
命令行工具和 Android Studio 使用的)。
所以我认为这只是版本不匹配。但我不确定如何解决这个问题。
我怎么能确定lint-api.jar
我当前的 android 工具有哪个版本?
当启动 sdk manager 时,它显示 Android SDK Tools 版本是 25.2.5(我已经更新到最新版本)。那么这是lint-api.jar
(或者是SDK 平台工具,SDK 构建工具,..)的版本?
android - Android/Kotlin:未解决的参考:木材
我正在尝试为 Android 编写一个 kotlin 库,但不能包含木材。我总是收到以下错误:
我的 build.gradle 中有这个:
我的源文件目前非常简单:
它在导入语句上失败。
我正在使用 Android studio 3 canary 4 和 kotlin 1.1.2-4。知道我做错了什么吗?还是木材不能在 kotlin 中使用?
android - 更改太多布局的可见性是否会成为性能问题?
假设您有一个FrameLayout
包含 10LinearLayouts
的内容,每次只有一个可见。
每个LinearLayout
都是一个复杂的视图,包含Button
, EditText
,TextView
等。
因此:
- 更改
LinearLayout
可见性以显示另一个项目会是一个巨大的性能问题吗? - 鉴于这是一个问题,为什么使用
ViewFlipper
不会降低应用程序的性能?