@@ -7,6 +7,7 @@ import android.app.NotificationManager
77import android.content.Context
88import android.content.Intent
99import android.content.pm.PackageManager
10+ import android.os.Build
1011import android.os.Bundle
1112import android.telephony.PhoneNumberUtils
1213import android.view.View
@@ -37,9 +38,6 @@ import java.util.concurrent.TimeUnit
3738
3839
3940class MainActivity : AppCompatActivity () {
40- private val sentReceiver = SentReceiver ()
41- private val deliveredReceiver = DeliveredReceiver ()
42-
4341 override fun onCreate (savedInstanceState : Bundle ? ) {
4442 super .onCreate(savedInstanceState)
4543
@@ -224,7 +222,10 @@ class MainActivity : AppCompatActivity() {
224222 ) == PackageManager .PERMISSION_GRANTED && ActivityCompat .checkSelfPermission(
225223 context,
226224 Manifest .permission.READ_PHONE_STATE
227- ) == PackageManager .PERMISSION_GRANTED
225+ ) == PackageManager .PERMISSION_GRANTED && (Build .VERSION .SDK_INT < 33 || ActivityCompat .checkSelfPermission(
226+ context,
227+ Manifest .permission.POST_NOTIFICATIONS
228+ ) == PackageManager .PERMISSION_GRANTED )
228229 ) {
229230 return true
230231 }
@@ -266,16 +267,20 @@ class MainActivity : AppCompatActivity() {
266267 }
267268 }
268269
269- requestPermissionLauncher.launch(
270- arrayOf(
271- Manifest .permission.SEND_SMS ,
272- Manifest .permission.RECEIVE_SMS ,
273- READ_PHONE_NUMBERS ,
274- Manifest .permission.READ_SMS ,
275- Manifest .permission.READ_PHONE_STATE
276- )
270+ var permissions = arrayOf(
271+ Manifest .permission.SEND_SMS ,
272+ Manifest .permission.RECEIVE_SMS ,
273+ READ_PHONE_NUMBERS ,
274+ Manifest .permission.READ_SMS ,
275+ Manifest .permission.READ_PHONE_STATE
277276 )
278277
278+ if (Build .VERSION .SDK_INT > 33 ) {
279+ permissions + = Manifest .permission.POST_NOTIFICATIONS
280+ }
281+
282+ requestPermissionLauncher.launch(permissions)
283+
279284 Timber .d(" creating permissions launcher" )
280285 }
281286
0 commit comments