/ kyokomi note / blog

Using Android Notificationsをやってみた

June 5, 2020 [Android]

Android開発のリハビリのためAndroid Codelabをちょっとやってみたので、個人的なメモを残しておく。

対象のcodelab

Advanced Android in Kotlin 01.1: Using Android Notifications

ここで学べること

とりあえず起動

とりあえずPullして起動するとこんな感じに、普通のToastを表示するだけのタイマー。

通知チャンネルの追加

通知チャンネルの重要度レベル

重要度(Android 8.0以降)ヘッドアップ通知ステータスバー
IMPORTANCE_HIGHありありあり
IMPORTANCE_DEFAULTありなしあり
IMPORTANCE_LOWなしなしあり
IMPORTANCE_MINなしなしなし

通知の表示

NotificationCompatに必要なことは全部ある感じ。以下、コード抜粋。

val builder = NotificationCompat.Builder(applicationContext, 
 	applicationContext.getString(R.string.egg_notification_channel_id))
		.setContentIntent(contentPendingIntent) // 通知をタップしたときにアプリに遷移する設定
		.setAutoCancel(true) // 通知をタップしてアプリに移動するときに通知が消える設定
		
val eggImage = BitmapFactory.decodeResource(applicationContext.resources, R.drawable.cooked_egg)
// 通知を広げたときの大きい表示設定
val bigPicture = NotificationCompat.BigPictureStyle().bigPicture(eggImage).bigLargeIcon(null)

...

builder.setStyle(bigPicture)
.setLargeIcon(eggImage)
通知の表示通知を広げたときの表示アプリアイコンのバッチ

まとめ

last modified June 6, 2020

👋 Related posts in the codelab series...