要件
- 最新バージョンのSDK。
- iOS 16.1以降およびiPadOS 17以降
- .p8 APNsキーを使用します。Appleは、Live Activitiesでp12証明書をサポートしていません。
- Xcode 14以降
セットアップ
1. SDKをセットアップ
アプリに最新バージョンのMobile SDKがセットアップされていることを確認してください。Live Activitiesは、WebサイトまたはWeb SDKでは利用できません。
Unity
UnityベースのモバイルアプリのクロスプラットフォームSDKガイド。

React Native & Expo
React NativeおよびExpo環境のセットアップ手順。

Flutter
Dartを使用するFlutterアプリのSDKガイド。

Ionic & Ionic Capacitor
IonicおよびCapacitorハイブリッドモバイルアプリのセットアップ。
.NET MAUI
.NET MAUIアプリとの統合ガイド。

Huawei Android Native
HMSプッシュサービスを使用するHuaweiデバイスのSDKセットアップ。
2. 新しいsetupDefaultメソッドを追加
OneSignal SDKにDefaultLiveActivityAttributesタイプのLiveActivityライフサイクルを管理するように指示するには、setupDefaultメソッドを呼び出すことができます。このメソッドを使用すると、Start Live ActivityとUpdate Live Activityの両方のAPIを使用して、Default Live Activityを開始/更新/終了できます。
3. Activity Widgetを作成
1
Info.plistを更新
Xcodeで、メインターゲットの
Info.plistを開き、キーSupports Live ActivitiesをBooleanとして追加し、YESに設定します。
InfoにSupports Live Activitiesキーを追加し、その値をBoolean YESに設定
Live Activitiesを更新するときに、Appleが更新の緊急性を判断するために使用する「優先度」を設定するオプションがあります。Appleには、高優先度フラグを頻繁に使用するリクエストをスロットルする内部しきい値があります。Live Activitiesのユースケースがより頻繁な高優先度更新に依存している場合は、AppleのDeveloper Docsで指示されているように、キー
NSSupportsLiveActivitiesFrequentUpdatesをInfo.plistにBoolean型としてYESに設定して追加できます。Live Activityがプッシュ予算を超えると、ユーザーにはダイアログが表示され、Live Activityの継続を許可すると、予算が自動的に増加してシームレスなユーザーエクスペリエンスが提供されます。2
Widget Extensionを作成
Xcodeで、File > New > Target… > Widget Extensionに移動します。
選択してNextを押します。名前を指定してWidget Extensionを構成し(例:
スキームのアクティブ化を求められたら、Don’t Activateをクリックします。

Xcodeでアプリの新しいWidget Extensionターゲットを追加
OneSignalWidget)、Include Live Activityが選択されていることを確認します。次に、Finishをクリックします。
Live ActivityのWidget Extensionオプション

Live ActivityのWidget Extensionオプション
3
PodfileにOneSignalXCFrameworkを追加
プロジェクトのTargetsリストでwidget extensionターゲットの名前を見つけます。例の名前は
Xcodeを閉じて、
OneSignalWidgetExtensionです。
widget extensionターゲットの名前を見つける
Podfileを開き、次のコードを追加します。OneSignalWidgetExtensionをwidget extensionターゲットの名前に置き換えます。Podfile
pod repo update && pod installを実行してOneSignalLiveActivities podをインストールします。4. LiveActivity.swiftファイルをセットアップ
Xcodeで、_WidgetExtensionLiveActivity.swift_ファイルを開きます。 画面の右側にあるInspectorパネルを開きます。Target Membership内で、**+**ボタンをクリックしてRunnerターゲットを選択します。
メインターゲットメンバーシップを許可
Swift
Live Activityをテスト
- アプリを起動します
- Start Live Activity APIリファレンスですべての可能なフィールドを確認してください。これらのフィールドの構造は、UIの設定方法によって異なる場合があります。例:
"event_updates":これは、Live Activityが開始された後に更新できる動的データです(コード例のcontext.state以降のすべて)。context.state.dataがあるため、このフィールドにdataオブジェクトと、コード例で追加したメッセージ辞書などの追加フィールドを追加します。使用方法については、以下のリクエスト例を参照してください。"event_attributes":これは、push to startリクエストで設定される静的データで、Live Activityが削除または上書きされるまで同じ値のままです。
-
push to startを使用する場合、コード内ではなく、リクエストで
"activity_id"を設定します。異なるActivity IDを使用すると、新しいLive Activitiesが開始されます。同じActivity IDを使用すると、そのIDを現在使用しているwidgetが上書きされます。 -
URLパスでOneSignal App IDを変更し、AuthorizationヘッダーでRest API Keyを変更していることを確認してください。デフォルトのセットアップを使用している場合、
DefaultActivityAttributesタイプは変更できません。また、パスに追加されるactivityタイプは大文字と小文字が区別され、ユーザーが定義したものまたは以下の例で使用されているDefault activityと一致する必要があることに注意してください。
curl