SDK: React Native

ステップ1: PushSDKライブラリをインポートする

お好みのパッケージマネージャーを使ってPushSDKをインストールしてください。

yarn add @pushly/push-sdk-react-native

自動リンクは自動的に提供されますarrow-up-right React Nativeバージョン 0.60 以降を使用している場合

ステップ2: Androidのセットアップ

ステップ2.1: Gradle

必要な依存関係を追加して、gradleスクリプトを更新します:

buildscript {
    ...
    dependencies {
        ...
        classpath 'com.google.gms:google-services:4.3.13'
    }
}
android {
    compileSdk 33
    ...

    defaultConfig {
        ...
        targetSdk 33
    }
}

apply plugin: 'com.google.gms.google-services'

ステップ2.2: Google Services

次のファイルを追加します google-services.json ファイルを android/app ディレクトリに。

ステップ3: iOSのセットアップ

ステップ3.1: Podsをインストールする

次の場所で <project_root>/ios ディレクトリ内で以下を実行します: pod install

ステップ3.2: Notification Service Extensionを追加する

画像やカスタムアクションをサポートするリッチ通知を有効にするには、Notification Service Extensionが必要です。

アプリの xcworkspace を使ってXCodeを開きます。次に、 File > New > Target を選択し、続いて Notification Service Extension をiOSテンプレートタブ内で選択して、 Next.

"NotificationServiceExtension"を Product Name に入力し、アプリ拡張の他の設定詳細も入力してから、 Finish をクリックしますが、 その後のダイアログでは有効化をクリックしないでください

クリック キャンセル モーダルが閉じた後にデプロイメントターゲットを設定できるように、サービス拡張の有効化を求めるダイアログで

デプロイメントターゲットを メインのアプリケーションターゲットと同じに設定してください。特別な理由がない限り、 Deployment Target をiOS 11に設定するべきです。これはPushSDK Frameworkおよび最新のXCodeでサポートされるiOSの最低バージョンです。

ステップ3.3: サービス拡張にPushly依存関係を追加する

次のファイルで <project_root>/ios/PodfileNotificationServiceExtension をメインターゲットと同じ階層に追加します:

Podfileにサービス拡張の依存関係を追加したので、再度インストールを実行する必要があります。 <project_root>/ios ディレクトリ内で、以下を実行します: pod install.

ステップ3.4: サービス拡張を更新する

次に、新しく作成されたNotification Service Extensionを開き、コードを以下の内容に置き換えます:

circle-info

Xcode が Pushly を見つけられないと警告する場合は、物理デバイス、またはビルド先として「Any iOS Device」が選択されていることを確認してください。

ステップ3.4: メインアプリケーションターゲットに機能を追加する

circle-exclamation

のみに追加する必要があります。ルートプロジェクトを選択し、その後にメインのアプリケーションターゲット > Signing & Capabilities

次をクリックします + Capability を選択して、 Push Notifications.

次をクリックします + Capability を選択して、 Background Modes.

を追加します。 Background Modes 機能を追加した後、 Remote Notifications が有効になっていることを確認してください。

次をクリックします + Capability を選択して、 App Groups.

次をクリックします + 内にある App Groups セクションのシンボルを使って新しい名前付きコンテナーを追加します。PushSDKが情報を正しく取得できるようにするには、コンテナー名を group.{app-bundle-id}.push.

にする必要があります。メインのアプリケーションターゲットで、新しく作成したApp Groupの横のチェックボックスをオンにします。

ステップ3.5: Notification Service Extensionに機能を追加する

次に、 NotificationServiceExtension ターゲットで Signing & Capabilities タブの下に表示されます。

次をクリックします + Capability を選択して、 App Groups.

最後に、新しく作成したApp Groupの横のチェックボックスをオンにします。

ステップ4: SDKの初期化

次のファイルで index.tsx または app.tsx ファイルで、以下のサンプル実装コードを使ってPushSDKを初期化します。

置き換えてください REPLACE_WITH_SDK_KEYsetConfiguration メソッド内で、プラットフォーム設定ページのSDK Keyに置き換えます。

Androidデバイスまたはエミュレーター(エミュレーターに Google Play Store Services がインストールされていることを確認してください)、またはiOS向けにビルドする場合はiOSデバイスでアプリを実行し、正しくビルドされることを確認してください。

前のステップで追加したコードにより、アプリ起動時にプッシュ許可ダイアログが表示されます。これは SDKメソッド を使ってダイアログを表示するタイミングを制御することでカスタマイズできます。

ダイアログを承認した後、プラットフォームにログインして Notifications > Create Notification に移動し、適切な ネイティブ: iOS または ネイティブ: Android チャネル

次のステップ

SDKが正しく動作していることを確認したら、次のような追加のオプション機能を続けて追加できます:

  • 通知の開封 / アプリリンク / ディープリンクの処理

  • 購読者のプロフィールに属性を付与する

  • 購読者がどのコンテンツとやり取りしたかに関する情報を送信する

最終更新