问题:
android开发中用到Handle,一直显示没有实现抽象方法,碰到下面的错误:
Class 'Anonymous class derived from Handler' must either be declared abstract or implement abstract method 'publish(LogRecord)' in 'Handler'
原因:
导入包错误
解决:
应该导入android.os.Handler,而不是java.util.logging
总结:
1.android.os.Handler(From the Android documentation)
处理程序允许您发送和处理与线程的MessageQueue关联的Message和Runnable对象。 每个Handler实例都与一个线程和该线程的消息队列关联。 创建新的Handler时,它将绑定到正在创建它的线程的线程/消息队列中-从那时起,它将把消息和可运行对象传递到该消息队列,并在它们从消息中出来时执行它们 队列。
Handler对象从Logger获取日志消息并导出。 例如,可能将它们写入控制台或将它们写入文件,或者将它们发送到网络日志记录服务,或者将它们转发到OS日志等等。
2.java.util.logging(From the Oracle documentation)
可以通过执行setLevel(Level.OFF)禁用处理程序,并可以通过执行具有适当级别的setLevel来重新启用处理程序。处理程序类通常使用LogManager属性来设置处理程序的Filter,Formatter和Level的默认值
参考:
https://blog.csdn.net/sinat_17775997/article/details/80690820
本文解析了在Android开发中遇到的Handler使用问题,详细对比了android.os.Handler与java.util.logging.Handler的不同之处,揭示了因包导入错误导致的问题及解决方案。

7740

被折叠的 条评论
为什么被折叠?



