android - 图书馆能否避免暴露其对 Timber 的使用?

标签 android gradle android-gradle-plugin lint

我正在开发一个使用开源库的 Android 应用程序,该库又使用 Timber . (不要与 Timber 混淆。)Timber 包含一些自定义 lint 检查,并且库将它们“泄漏”到我的项目中。起初这只是一个烦恼,因为每次我使用标准的 Android Log 类时,Timber 的 lint 检查都会提示。但是现在一个old Timber issue突然破坏了我的构建。

我想提交一个 PRQ,或者至少通知库作者他们如何避免暴露他们对 Timber 的使用,以免它污染我的项目。该库是使用 Gradle 构建的。

最佳答案

由于我们讨论的是第 3 方库,因此除了 fork 库并修改它或忽略规则之外,您在项目内部无能为力。因此,您可以采取的最快解决方法是禁用 Timber 的 lint 检查。

打开你的 build.gradle 文件并添加:

android {
  lintOptions {
  disable 'TimberArgCount', 'TimberArgTypes', 'TimberTagLength', 'BinaryOperationInTimber', 
  'LogNotTimber', 'StringFormatInTimber', 'ThrowableNotAtBeginning'
  }
}

您可以查看 Timber 的 lint 规则 in here .

有关 lintOptions 的更多信息,read the docs here . 有关禁用选项的更多信息,read it here .

关于android - 图书馆能否避免暴露其对 Timber 的使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51271674/

相关文章:

android - 错误 : Failed to resolve: androidx. 旧版:legacy-support-v4

android - 无法将 Firebase 版本更新到 11.4.2

android - 按下按钮时`java.lang.UnsatisfiedLinkError: Native method not found: `

gradle - 显示一个配置的依赖关系

android - 找不到正确的 SDK 的全息主题

android - 接收到 NFC 后保持当前 Activity

gradle - 在根项目 ':projectA' 中找不到路径为 'gradle-tutorial' 的项目

android - java.lang.NoClassDefFoundError : Failed resolution of: Landroid/support/v4/util/ArrayMap; 错误

android - javadoc中的引用资源

android - 错误 : Attempting to call cordova. exec() 在 'deviceready' 之前。无视