This page references our older Objective-C SDK. Check out our new Swift SDK to integrate our latest Swift-first library.
統合の完了
これらの手順に従う前に、Carthage、CocoaPods、Swift Package Manager、または手動統合のいずれかを使用して SDK を統合していることを確認してください。
ステップ1:アプリデリゲートを更新する
Braze SDK を CocoaPods、Carthage、またはダイナミックな手動統合と統合している場合は、次のコード行を AppDelegate.m
ファイルに追加してください。
1
#import "Appboy-iOS-SDK/AppboyKit.h"
Swift Package Manager または静的な手動統合を使用して統合している場合は、代わりに次の行を使用します。
1
#import "AppboyKit.h"
次に、AppDelegate.m
ファイル内の application:didFinishLaunchingWithOptions:
メソッド内に以下のスニペットを追加します。
1
2
3
[Appboy startWithApiKey:@"YOUR-APP-IDENTIFIER-API-KEY"
inApplication:application
withLaunchOptions:launchOptions];
設定の管理ページの正しい値で YOUR-APP-IDENTIFIER-API-KEY
を更新してください。アプリ識別子の API キーの場所について詳しくは、API ドキュメントをご覧ください。
Braze SDK を CocoaPods、Carthage、またはダイナミックな手動統合と統合している場合は、次のコード行を AppDelegate.swift
ファイルに追加します。
1
import Appboy_iOS_SDK
Swift Package Manager または静的な手動統合を使用して統合している場合は、代わりに次の行を使用します。
1
import AppboyKit
Swift プロジェクトでの Objective-C コードの使用の詳細については、Apple 開発者ドキュメントを参照してください。
次に、AppDelegate.swift
で、次のスニペットを application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool
に追加します。
1
Appboy.start(withApiKey: "YOUR-APP-IDENTIFIER-API-KEY", in:application, withLaunchOptions:launchOptions)
設定の管理ページの正しい値で YOUR-APP-IDENTIFIER-API-KEY
を更新してください。アプリ識別子の API キーの場所について詳しくは、API ドキュメントをご覧ください。
Braze 機能を使用するための前提条件であるため、sharedInstance
シングルトンはstartWithApiKey:
が呼び出される前に nil になります。
必ずアプリケーションのメインスレッドで Braze を初期化してください。非同期で初期化すると、機能が破損する可能性があります。
ステップ2:データクラスターを指定する
2019年12月の時点で、カスタムエンドポイントは提供されなくなっていることに注意してください。既存のカスタムエンドポイントがある場合は、それを引き続き使用できます。詳細については、利用可能なエンドポイントのリストを参照してください。
コンパイル時のエンドポイント構成 (推奨)
既存のカスタムエンドポイントが指定されている場合:
- Braze iOS SDK v 3.0.2 以降では、Info.plist
ファイルを使用してカスタムエンドポイントを設定できます。Braze
辞書を Info.plist
ファイルに追加してください。Braze
辞書内で、Endpoint
文字列サブエントリを追加し、値をカスタムエンドポイント URL の権限 (たとえば、https://sdk.iad-01.braze.com
ではなく sdk.iad-01.braze.com
) に設定します。Braze iOS SDK v4.0.2 より前では、辞書キー Appboy
を Braze
の代わりに使用する必要があります。
Braze 担当者は、正しいエンドポイントについてすでに通知しているはずです。
ランタイムエンドポイント構成
既存のカスタムエンドポイントが指定されている場合:
- Braze iOS SDK v 3.17.0 以降では、startWithApiKey:inApplication:withLaunchOptions:withAppboyOptions:
に渡される appboyOptions
パラメーター内の ABKEndpointKey
を使用してエンドポイントの設定をオーバーライドできます。値をカスタムエンドポイント URL 権限 (たとえば、https://sdk.iad-01.braze.com
ではなくsdk.iad-01.braze.com
) に設定します。
SDK の統合が完了
Braze はアプリケーションからデータを収集しており、基本的な統合は完了しているはずです。カスタムイベントトラッキング、プッシュ メッセージング、および Braze 機能の完全なスイートを有効にするには、次の記事を参照してください。
起動時の Braze のカスタマイズ
起動時に Braze をカスタマイズする場合は、代わりに Braze 初期化メソッド startWithApiKey:inApplication:withLaunchOptions:withAppboyOptions:
を使用し、オプションの Braze 起動キー NSDictionary
を渡すことができます。
AppDelegate.m
ファイルの application:didFinishLaunchingWithOptions:
メソッド内に、次の Braze メソッドを追加します。
1
2
3
4
[Appboy startWithApiKey:@"YOUR-APP-IDENTIFER-API-KEY"
inApplication:application
withLaunchOptions:launchOptions
withAppboyOptions:appboyOptions];
このメソッドは startWithApiKey:inApplication:withLaunchOptions:
初期化メソッドを置き換えることに注意してください。
AppDelegate.swift
の application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool
メソッド内に、次の Braze メソッドを追加します。appboyOptions
はスタートアップ構成値の Dictionary
です。
1
2
3
4
Appboy.start(withApiKey: "YOUR-APP-IDENTIFIER-API-KEY",
in:application,
withLaunchOptions:launchOptions,
withAppboyOptions:appboyOptions)
このメソッドは startWithApiKey:inApplication:withLaunchOptions:
初期化メソッドを置き換えることに注意してください。
このメソッドは、次のパラメータを使用して呼び出されます。
YOUR-APP-IDENTIFIER-API-KEY
– Braze ダッシュボードのアプリ識別子 API キー。application
– 現在のアプリ。launchOptions
–application:didFinishLaunchingWithOptions:
から取得するオプションNSDictionary
。appboyOptions
– Braze のスタートアップ構成値を持つオプションのNSDictionary
。
Braze スタートアップキーのリストについては、Appboy.h を参照してください。
Appboy.sharedInstance() と Swift の nullability
一般的な慣例とは多少異なりますが、Appboy.sharedInstance()
シングルトンはオプションです。これは、startWithApiKey:
が呼び出される前は sharedInstance
が nil
であり、遅延初期化を使用できる非標準で無効ではない実装がいくつかあるためです。
Appboy の sharedInstance
(標準実装) にアクセスする前に didFinishLaunchingWithOptions:
デリゲートで startWithApiKey:
を呼び出すと、Appboy.sharedInstance()?.changeUser("testUser")
のようなオプションのチェーンを使用して、面倒なチェックを回避できます。これは、非 null sharedInstance
を想定した Objective-C 実装と同等になります。
追加のリソース
iOS クラスの完全なドキュメント を使用して SDK メソッドに関する追加のガイダンスを提供できます。