firebase 通知不振动

mbjcgjjk  于 2022-11-17  发布在  其他
关注(0)|答案(1)|浏览(186)
const val channelId = "notification_channel"
const val channelName = "com.deskmateai.t2chaiwala"
val vibration = longArrayOf(100, 200, 300, 400, 500, 400, 300, 200)

class MyFirebaseMessagingService: FirebaseMessagingService() {
override fun onMessageReceived(remoteMessage: RemoteMessage) {
    super.onMessageReceived(remoteMessage)
    generateNotification(remoteMessage.notification!!.title!!, remoteMessage.notification!!.body!!)

}

// generating notification
private fun generateNotification(title: String, description: String){
    val builder: NotificationCompat.Builder = NotificationCompat.Builder(applicationContext, channelId)
        .setContentTitle(title)
        .setSmallIcon(R.drawable.tea_notify_logo)
        .setAutoCancel(true)
        .setContentText(description)
        .setSound(Settings.System.DEFAULT_NOTIFICATION_URI)
        .setDefaults(NotificationCompat.DEFAULT_VIBRATE)
        .setVibrate(longArrayOf(500, 500))
    val v = applicationContext.getSystemService(Context.VIBRATOR_SERVICE) as Vibrator
    v.vibrate(1000)
    val manager: NotificationManagerCompat = NotificationManagerCompat.from(applicationContext)
    manager.notify(1, builder.build())

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O){
        val channel = NotificationChannel(channelId, channelName, NotificationManager.IMPORTANCE_DEFAULT)
        channel.enableLights(true)
        channel.enableVibration(true)
        channel.vibrationPattern = vibration

        val manager = getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
        manager.createNotificationChannel(channel)
        manager.notify(1, builder.build())
    }

}

我正在做一个应用程序在android为我已经集成了firebasase推送通知,但我的hone是不是振动当通知来了.我也添加了振动权限在android清单文件.和你可以看到在代码中我已经做了一切振动我的手机上的通知,但它不是.

lb3vh1jj

lb3vh1jj1#

您需要在创建频道时设置振动。此外,请确保重新安装您的应用程序以应用频道更改。

private fun createCallNotificationChannel(): NotificationChannelCompat {
        val channel = NotificationChannelCompat.Builder(
            INCOMING_CALL_CHANNEL_ID,
            NotificationManagerCompat.IMPORTANCE_HIGH
        ).setName("Incoming notification")
            .setDescription("Incoming notification alerts")
            .setVibrationEnabled(true)
            .build()
        return channel
    }

相关问题