diff options
Diffstat (limited to 'app/src/google')
-rw-r--r-- | app/src/google/AndroidManifest.xml | 2 | ||||
-rw-r--r-- | app/src/google/java/org/traccar/manager/ManagerMessagingService.kt | 8 |
2 files changed, 8 insertions, 2 deletions
diff --git a/app/src/google/AndroidManifest.xml b/app/src/google/AndroidManifest.xml index c9b855e..468e5b7 100644 --- a/app/src/google/AndroidManifest.xml +++ b/app/src/google/AndroidManifest.xml @@ -21,7 +21,7 @@ android:name="com.google.firebase.messaging.default_notification_icon" android:resource="@drawable/ic_stat_notify" /> - <service android:name=".ManagerMessagingService"> + <service android:exported="false" android:name=".ManagerMessagingService"> <intent-filter> <action android:name="com.google.firebase.MESSAGING_EVENT" /> </intent-filter> diff --git a/app/src/google/java/org/traccar/manager/ManagerMessagingService.kt b/app/src/google/java/org/traccar/manager/ManagerMessagingService.kt index 165de63..a298591 100644 --- a/app/src/google/java/org/traccar/manager/ManagerMessagingService.kt +++ b/app/src/google/java/org/traccar/manager/ManagerMessagingService.kt @@ -19,6 +19,7 @@ import android.annotation.SuppressLint import android.app.NotificationManager import android.app.PendingIntent import android.content.Intent +import android.os.Build import androidx.core.app.NotificationCompat import com.google.firebase.messaging.FirebaseMessagingService import com.google.firebase.messaging.RemoteMessage @@ -28,7 +29,12 @@ class ManagerMessagingService : FirebaseMessagingService() { @SuppressLint("UnspecifiedImmutableFlag") override fun onMessageReceived(remoteMessage: RemoteMessage) { super.onMessageReceived(remoteMessage) - val pendingIntent = PendingIntent.getActivity(this, 0, Intent(this, MainActivity::class.java), PendingIntent.FLAG_ONE_SHOT) + val flags = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { + PendingIntent.FLAG_ONE_SHOT or PendingIntent.FLAG_IMMUTABLE + } else { + PendingIntent.FLAG_ONE_SHOT + } + val pendingIntent = PendingIntent.getActivity(this, 0, Intent(this, MainActivity::class.java), flags) val builder = NotificationCompat.Builder(this, getString(R.string.notification_channel_id)) .setSmallIcon(R.drawable.ic_stat_notify) .setContentTitle(getString(R.string.app_name)) |