📲
プッシュ通知のタイトルの改行について
背景
「プッシュ通知のタイトルに改行を入れたい」とのリクエストがあり、実現方法を調べてました。
こういう感じ(↓)のやつです。
前提
- Firebase Cloud Messaging を使っている
- 対象は Android と iOS のモバイルアプリ
結論
- Android は title に改行で OK
- iOS は APNS で subtitle に指定する
コード例
title = 'タイトル'
subtitle = 'サブタイトル'
message = messaging.Message(
notification=messaging.Notification(
// Android はタイトルしか指定できない。改行でサブタイトルを連結
title=title+\n+subtitle,
body=body,
),
data=...,
token=...,
// ↓apns を設定(for iOS)
apns=messaging.ApnsConfig(
payload=messaging.APNSPayload(
aps=messaging.Aps(
alert=messaging.ApsAlert(
// ここで指定すると notification.title を override できる
// iOS は改行で連結しないので改めて指定する
title=title
subtitle=subtitle
)
)
)
)
)
わかったこと
- Android には subtitle 要素は存在しないので改行で表現する
- iOS で APNS を使わずに Android 同様にタイトルに改行を入れると1行分しか表示されない
Discussion