우찬쓰 개발블로그

안드로이드 오레오 이상 푸시 알림 진동 끄는 법 (Android Notification vibrate disable) 본문

안드로이드/안드로이드 개발

안드로이드 오레오 이상 푸시 알림 진동 끄는 법 (Android Notification vibrate disable)

이우찬 2019. 4. 21. 00:53
반응형

안드로이드 8부터는 NotificationChannel이 필수가 되면서 다루기가 복잡해 졌는데, 거기다가 설정도 잘 안먹으니 답답한 노릇이다.

 

본론으로 들어가서, 오레오 이상부터는 다음처럼 꼼수로 진동을 꺼야한다.

 

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
    val channel = NotificationChannel(
        channelId,
        getString(R.string.push),
        NotificationManager.IMPORTANCE_LOW // 진동 끄기
    )
    channel.setShowBadge(true)
    channel.vibrationPattern = longArrayOf(0) // 진동 끄기
    channel.enableVibration(true) // 진동 끄기
    notificationManager.createNotificationChannel(channel)
}

 

중요한점은, 이것을 한 뒤에 앱을 완전히 지우고 다시 설치해야한다.

 

그 이유는 channel은 한번 생성되면 변경되거나 삭제가 안되기 때문이다.

 

따라서 앱을 완전히 지우고 재설치 하거나, channel ID를 바꿔주어야 한다.

반응형
Comments