如何使用WindowManager删除CallScreeningService中的视图?

问题描述 投票:0回答:1

我使用 showCallInfoView 函数在 onScreenCall 中创建一个视图,它出现:

override fun onScreenCall(details: Call.Details) {
    if (details.callDirection == Call.Details.DIRECTION_INCOMING) {
        details.handle?.schemeSpecificPart?.let { phoneNumber ->
            Log.d("phoneNumber", "phoneNumber======$phoneNumber")
            if (phoneNumber.isNotEmpty()) {
                showCallInfoView(phoneNumber, blackList)
                respondToCall(details, CallResponse.Builder().build())
            }
        }
    }
}

然后我尝试根据状态删除视图:

when (state) {
                TelephonyManager.CALL_STATE_IDLE -> {
                    mainHandler.post {
                        Log.d("CALL_STATE_IDLE-1", "CALL_STATE_IDLE")
                        windowManager?.removeView(customView)
                    }

                }

但这不起作用。

我尝试使用

val mainHandler = Handler(Looper.getMainLooper())
,但没有帮助。

如何做?

android view service
1个回答
0
投票

你找到问题的解决办法了吗?

© www.soinside.com 2019 - 2024. All rights reserved.