登录Android应用程序的"Java Library Code"库

FrV*_*aBe 8 java logging android

我按照建议在单独的"Java库代码"项目中为我的Android应用程序实现Android设备(不是应用程序!)独立库代码.这使我更容易进行测试,因为我可以像以前那样使用标准的maven项目布局,Spring测试支持和Continuous Build系统.我不想在我的Android App项目中混合使用它,尽管这可能是可能的.

我现在想知道如何在这个库中实现日志记录.由于这个库将在我想要的Android设备上使用android.util.Log.我将followind依赖项添加到我的项目中以获取缺少的Android包/类和依赖项:

<dependency>
    <groupId>com.google.android</groupId>
    <artifactId>android</artifactId>
    <version>2.2.1</version>
    <scope>provided</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)

但是这个库只包含stub方法(类似于android-sdk中的android.jar),因此使用了android.util.Log结果

java.lang.RuntimeException: Stub!
Run Code Online (Sandbox Code Playgroud)

在运行我的单元测试时.如何实现在Android设备上运行但不会在外部失败的日志记录(我不希望它能够正常工作,但它一定不会失败)?

感谢
Klaus的任何建议


目前我正在使用解决方法来捕获android之外的异常,但希望有更好的解决方案.

try {
    Log.d("me", "hello");
} catch (RuntimeException re) {
    // ignore failure outside android
}
Run Code Online (Sandbox Code Playgroud)

Jör*_*ann 8

从GrepCode这两个环节(1,2)似乎表明,该java.util.logging的Android上代表们android.util.Log默认的处理器,所以在您的图书馆,你应该能够只使用的java.util.logging蜜蜂.

我找不到有关此行为的任何进一步文档