【发布时间】:2012-02-19 10:41:49
【问题描述】:
我开发了一个使用 apache log4j 库的应用程序/库。 现在我想将该库也用于 Android 应用程序,其中通常的 log4j 库不起作用。
现在我知道有一些库 lis slf4j o log4j for android,但我的想法是使用可用的 log4j 库(然后当库在计算机上运行时)并在运行时使用 Android 日志记录工具Android 设备。
有可能吗? 我认为解决方案应该是实现一个内部 Logger 类来选择可用的日志记录系统。
- 这是个好主意吗?
- 还是只选择一个日志系统更好?
- 或者也许更好的是内部记录器类在两个不同的版本中实现,第一个用于真实 PC,第二个用于 Android。
还有:
- 如何检测运行环境? (是在 Android 上还是在电脑上?是否足以检测我是在 DalvikVM 还是 JavaVM 上?有可能吗?
感谢任何帮助/建议。
【问题讨论】:
-
一种常见的方法是使用反射来确定某个包/类在运行时是否可用,并根据它通过工厂模式创建特定于平台的接口对象。
-
好主意,我没想到!谢谢。