@@ -29,17 +29,15 @@ class CallForegroundService : Service() {
2929
3030 override fun onBind (intent : Intent ? ): IBinder ? = null
3131
32+ @Suppress(" ForegroundServiceType" )
3233 override fun onStartCommand (intent : Intent ? , flags : Int , startId : Int ): Int {
3334 val conversationName = intent?.getStringExtra(EXTRA_CONVERSATION_NAME )
3435 val callExtras = intent?.getBundleExtra(EXTRA_CALL_INTENT_EXTRAS )
3536 val notification = buildNotification(conversationName, callExtras)
3637
3738 if (Build .VERSION .SDK_INT >= Build .VERSION_CODES .Q ) {
38- startForeground(
39- NOTIFICATION_ID ,
40- notification,
41- resolveForegroundServiceType(callExtras)
42- )
39+ val foregroundServiceType = resolveForegroundServiceType(callExtras)
40+ startForeground(NOTIFICATION_ID , notification, foregroundServiceType)
4341 } else {
4442 startForeground(NOTIFICATION_ID , notification)
4543 }
@@ -90,21 +88,20 @@ class CallForegroundService : Service() {
9088 }
9189
9290 private fun resolveForegroundServiceType (callExtras : Bundle ? ): Int {
93- if ( Build . VERSION . SDK_INT < Build . VERSION_CODES . Q ) {
94- return 0
95- }
96-
97- var serviceType = ServiceInfo . FOREGROUND_SERVICE_TYPE_MICROPHONE
98- val isVoiceOnlyCall = callExtras?.getBoolean(KEY_CALL_VOICE_ONLY , false ) ? : false
99- val canPublishVideo = callExtras?.getBoolean(
100- KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_VIDEO ,
101- false
102- ) ? : false
103-
104- if ( ! isVoiceOnlyCall && canPublishVideo) {
105- serviceType = serviceType or ServiceInfo . FOREGROUND_SERVICE_TYPE_CAMERA
91+ var serviceType = 0
92+ if ( Build . VERSION . SDK_INT >= Build . VERSION_CODES . R ) {
93+ serviceType = serviceType or ServiceInfo . FOREGROUND_SERVICE_TYPE_MICROPHONE
94+
95+ val isVoiceOnlyCall = callExtras?.getBoolean( KEY_CALL_VOICE_ONLY , false ) ? : false
96+ val canPublishVideo = callExtras?.getBoolean(
97+ KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_VIDEO ,
98+ false
99+ ) ? : false
100+
101+ if ( ! isVoiceOnlyCall && canPublishVideo) {
102+ serviceType = serviceType or ServiceInfo . FOREGROUND_SERVICE_TYPE_CAMERA
103+ }
106104 }
107-
108105 return serviceType
109106 }
110107
0 commit comments