Documentation Index
Fetch the complete documentation index at: https://documentation.onesignal.com/llms.txt
Use this file to discover all available pages before exploring further.
iOSは、通知コンテンツアプリ拡張機能のエントリーポイントとしてUNNotificationContentExtensionプロトコルを提供しています。これを使用して、アプリの通知用のカスタムインターフェースを表示できます。このサンプルガイドでは、iOS通知内でカルーセルを作成するためにこれを使用する方法について説明します。
1. 通知コンテンツ拡張機能を追加

Xcodeで、ファイル > 新規 > ターゲット…を選択します

「Notification Content Extension」を選択します

ポップアップ表示されるウィンドウで選択を確認します
2. アプリにコードを追加
GithubからOSNotificationContentExtensionをダウンロードし、XcodeプロジェクトのOSNotificationContentExtensionを同じファイルで置き換えます。
次のファイルが追加されます:
3. 通知カテゴリを設定
この例は、AppDelegate.swiftのdidFinishLaunchingWithOptions内でアクション可能な通知タイプを宣言します。
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
//START Authorize OS Notification Carousel Category
if #available(iOS 10.0, *) {
let options: UNAuthorizationOptions = [.alert]
UNUserNotificationCenter.current().requestAuthorization(options: options) { (authorized, error) in
if authorized {
let categoryIdentifier = "OSNotificationCarousel"
let carouselNext = UNNotificationAction(identifier: "OSNotificationCarousel.next", title: "👉", options: [])
let carouselPrevious = UNNotificationAction(identifier: "OSNotificationCarousel.previous", title: "👈", options: [])
let carouselCategory = UNNotificationCategory(identifier: categoryIdentifier, actions: [carouselNext, carouselPrevious], intentIdentifiers: [], options: [])
UNUserNotificationCenter.current().setNotificationCategories([carouselCategory])
}
}
}
//END Authorize OS Notification Carousel Category
return true
}
4. プッシュ通知を送信
プッシュメッセージの送信時に、iOSカテゴリとカスタムデータを設定できます。
iOSカテゴリ
iOSカテゴリとしてOSNotificationCarouselを使用します:
「プラットフォーム設定」 > Apple iOSに送信 > 「カテゴリ」で設定します ios_category APIパラメーターで設定します。
カスタムデータ
OneSignalには、通知ごとに複数の画像をアップロードするオプションはありません。
代わりに、カンマ,で区切られた画像URLをリストする必要があります
「詳細設定」 > 「追加データ」で設定します「キー」にはimagesを設定し、「値」には引用符なしでカンマ区切りのURLのリストを設定します。例、コピー&ペースト:https://cdn.pixabay.com/photo/2015/12/01/20/28/road-1072823_960_720.jpg,https://cdn.pixabay.com/photo/2013/11/28/10/36/road-220058_960_720.jpg,https://cdn.pixabay.com/photo/2012/08/27/14/19/mountains-55067_960_720.png,https://cdn.pixabay.com/photo/2015/01/28/23/35/landscape-615429_960_720.jpg,https://cdn.pixabay.com/photo/2016/05/05/02/37/sunset-1373171_960_720.jpg
次のようにdata APIパラメーターを使用します:data: {
"images" : "https://cdn.pixabay.com/photo/2015/12/01/20/28/road-1072823_960_720.jpg,https://cdn.pixabay.com/photo/2013/11/28/10/36/road-220058_960_720.jpg,https://cdn.pixabay.com/photo/2012/08/27/14/19/mountains-55067_960_720.png,https://cdn.pixabay.com/photo/2015/01/28/23/35/landscape-615429_960_720.jpg,https://cdn.pixabay.com/photo/2016/05/05/02/37/sunset-1373171_960_720.jpg"
}
プッシュを送信
プッシュを受信したら、iOSバージョンに応じて、長押しするか左にスワイプして「表示」をクリックして通知を展開する必要があります。
参考資料