AppboyKit(Objective-C SDKとも呼ばれます)はもはやサポートされておらず、Swift SDK. 新しい機能、バグ修正、セキュリティー更新s、またはテクニカルサポートを受けません。ただし、メッセージングと分析は通常どおり機能し続けます。詳しくは、新しいBrazeの概要SDK]を参照してください。
統合を完了する
これらの手順に従う前に、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ドキュメントをご覧ください。
sharedInstance シングルトンは、startWithApiKey: が呼び出される前はnilになります。これはBraze機能を使用するための前提条件です。
必ずアプリケーションのメインスレッドでBrazeを初期化してください。非同期で初期化すると、機能が破損する可能性があります。
ステップ2:データクラスターを指定する
2019年12月の時点で、カスタムエンドポイントは提供されなくなっていることに注意してください。既存のカスタムエンドポイントがある場合は、それを引き続き使用できます。詳細については、利用可能なエンドポイントのリスト を参照してください。
コンパイル時のエンドポイント設定(推奨)
既存のカスタムエンドポイントが指定されている場合:
- Braze iOS SDK v3.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 v3.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-IDENTIFIER-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メソッドに関する追加のガイダンスを得ることができます。