概要
通知チャンネルをFlutterで作成する方法を記載します。
通知チャンネルについてはこちら。
flutter_local_notificationというパッケージを使用します。
プラグインの初期化処理
プロジェクトのmain関数内に以下の処理を追加します。
final FlutterLocalNotificationPlugin notificationPlugin =
FlutterLocalNotificationPlugin();
await notificationPlugin.initialize(
InitializationSettings(
android: AndroidInitializationSettings('app_icon')),
);
AndroidInitializationSettingsの引数にアイコン(プッシュ通知のバナーに表示される)の指定が必須になっています。※ここでは'app_icon'としている
指定したアイコンはflutter_local_notificationのプラグインを使って通知を表示する場合に使われるので、必要に応じて設定を変更します。
任意で指定できる項目が他にもありますがここでは省略します。
iOSにも対応する場合はIOSInitializationSettingsの初期化が必要になります。
プッシュ通知を受け取った際の処理
プッシュ通知を受け取った後のハンドリング処理に以下の処理を追加します。
final channelId = '1';
final channelName = 'SampleNotification';
final AndroidNotificationChannel channel = AndroidNotificationChannel(
channelId,
channelName,
);
await notificationsPlugin
.resolvePlatformSpecificImplementation<
AndroidFlutterLocalNotificationsPlugin>()
?.createNotificationChannel(channel);
channelIdやchannelNameは受け取ったプッシュの種類などに応じて変更します。