【发布时间】:2018-11-07 16:05:41
【问题描述】:
looper.quitSafely() 在 android API 17 以下有替代方法吗?
【问题讨论】:
-
是的,
Looper#quit() -
不,Looper#quit() 立即关闭 looper 并且不运行排队消息,我需要在处理完所有消息后停止 looper。
-
这是你唯一能做的事情
looper.quitSafely() 在 android API 17 以下有替代方法吗?
【问题讨论】:
Looper#quit()
首先,它不低于 API 17。它低于 18。
二、有办法:
private val backgroundHandler: Handler
private val backgroundHandlerThread = HandlerThread("ICEManagerWrapper")
fun stop() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2)
backgroundHandlerThread.quitSafely()
else
backgroundHandler.post {
backgroundHandlerThread.quit()
}
}
【讨论】: