Android:java.util.logging.Logger vs android.util.Log

为什么
Android会维护两个似乎支持相同功能的不同Log类?

我在说:

>记录android.util.Log
> Logger java.util.logging.Logger

对于我多年来开发的内容,每个Android官方文档都指向Log而不是Logger.

甚至像TimingLogger这样的特定记录器也使用Log.

那么为什么支持这两个呢?

是否有任何可以通过Logger使用的功能,而不是通过Log无法实现的功能?

两者都有具体的用例吗?

最佳答案 功能交叉似乎是:

> android.util.Log = java.util.logging.Logger
> android.util.Printer = java.util.logging.Formatter
> android.util.PrintStreamPrinter = java.util.logging.StreamHandler

看起来像“android.util.Log”将会:

>支持android log.
>支持Streams,Writers和Strings.
>将变得更小,更轻,可能更快.

看起来像“J.U.L”将会:

>使用java.util.logging.MemoryHandler缓冲记录.这可以说当发生严重错误时,您可以包含可能处于较低级别的最后1000条记录.
>使用java.util.logging.Filter过滤记录.没有包含过时的过滤器,但它确实在android.util.Printer中实现了这种行为的更多粒度
> XML的开箱即用支持.
> Sockets的开箱即用支持.
>支持第三方java.util.logging.Handler实施.

点赞