# #android #firebase #push-notification #firebase-notifications
Вопрос:
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 gt;= 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, для которого я интегрировал push-уведомление firebaase, но мой хон не вибрирует, когда приходит уведомление . Я также добавил разрешение на вибрацию в файл манифеста Android. и, как вы можете видеть в коде, я сделал все, чтобы вибрировать мой телефон при уведомлении, но это не так.
Комментарии:
1. Если
Vibrator
экземпляр также не работает, то это не проблема с уведомлениями. Убедитесь, что ваше устройство не отключено, Не беспокоить или что-то в этом роде. Некоторые телефоны отключают некоторые функции по умолчанию, и вы должны включить их для каждого приложения в настройках, так что я бы тоже посмотрел на это. Также попробуйте перезагрузить телефон, на случай, если вибратор не работает (иногда это случается, например, когда исчезают тактильные ощущения при нажатии клавиатуры).2. Он не работает ни в одном из телефонов. Я протестировал его более чем на 6 устройствах
3. Вы можете попробовать
vibrate
вызов, который принимает aVibrationEffect
(который вы должны использовать в API 26 ), но это должно быть так же просто, как добавить разрешение на вибрацию, получить услугу вибратора, позвонитьvibrate
. Это все, что мне пришлось сделать в подобной ситуации