Restore POST_NOTIFICATIONS permission check for SDK 33+

Although we don't even target it yet and don't prompt for it but whatever, less work in the future.
This commit is contained in:
arkon 2023-03-26 12:56:34 -04:00
parent 1986042277
commit 1de4bc9586

View File

@ -1,14 +1,16 @@
package eu.kanade.tachiyomi.util.system
import android.annotation.SuppressLint
import android.Manifest
import android.app.Notification
import android.app.NotificationManager
import android.content.Context
import android.os.Build
import androidx.core.app.NotificationChannelCompat
import androidx.core.app.NotificationChannelGroupCompat
import androidx.core.app.NotificationCompat
import androidx.core.app.NotificationManagerCompat
import androidx.core.app.NotificationManagerCompat.NotificationWithIdAndTag
import androidx.core.content.PermissionChecker
import androidx.core.content.getSystemService
import eu.kanade.tachiyomi.R
@ -20,22 +22,18 @@ fun Context.notify(id: Int, channelId: String, block: (NotificationCompat.Builde
this.notify(id, notification)
}
@SuppressLint("MissingPermission")
fun Context.notify(id: Int, notification: Notification) {
// TODO: check for permission once targeting SDK 33+
// if (PermissionChecker.checkSelfPermission(this, Manifest.permission.POST_NOTIFICATIONS) != PermissionChecker.PERMISSION_GRANTED) {
// return
// }
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU && PermissionChecker.checkSelfPermission(this, Manifest.permission.POST_NOTIFICATIONS) != PermissionChecker.PERMISSION_GRANTED) {
return
}
NotificationManagerCompat.from(this).notify(id, notification)
}
@SuppressLint("MissingPermission")
fun Context.notify(notificationWithIdAndTags: List<NotificationWithIdAndTag>) {
// TODO: check for permission once targeting SDK 33+
// if (PermissionChecker.checkSelfPermission(this, Manifest.permission.POST_NOTIFICATIONS) != PermissionChecker.PERMISSION_GRANTED) {
// return
// }
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU && PermissionChecker.checkSelfPermission(this, Manifest.permission.POST_NOTIFICATIONS) != PermissionChecker.PERMISSION_GRANTED) {
return
}
NotificationManagerCompat.from(this).notify(notificationWithIdAndTags)
}