
AppboyKit(Objective-C SDKとも呼ばれます)はもはやサポートされておらず、Swift SDK. 新しい機能、バグ修正、セキュリティー更新s、またはテクニカルサポートを受けません。ただし、メッセージングと分析は通常どおり機能し続けます。詳しくは、新しいBrazeの概要SDK]を参照してください。
統合を完了する
これらの手順に従う前に、Carthage、CocoaPods、Swift Package マネージャー、または手動統合のいずれかを使用してSDKを統合していることを確認してください。
ステップ1: アプリデリゲートを更新する
Braze SDKをCocoaPods、Carthage、またはダイナミック手動統合で統合する場合は、AppDelegate.m ファイルに以下のコード行を追加してください:
1
#import "Appboy-iOS-SDK/AppboyKit.h"
Swift Package マネージャーまたはスタティック手動統合で統合する場合は、代わりに以下の行を使用してください:
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 マネージャーまたはスタティック手動統合で統合する場合は、代わりに以下の行を使用してください:
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ファイルを使用してカスタムエンドポイントを設定できます。Info.plistファイルにBrazeディクショナリを追加します。Brazeディクショナリ内に、Endpoint文字列サブエントリを追加し、カスタムエンドポイントURLのオーソリティを値として設定します(例:sdk.iad-01.braze.com、https://sdk.iad-01.braze.comではありません)。Braze iOS SDK v4.0.2より前のバージョンでは、Brazeの代わりにディクショナリキーAppboyを使用する必要があります。
Brazeの担当者から、正しいエンドポイントについてすでにご案内があるはずです。
ランタイムのエンドポイント設定
既存のカスタムエンドポイントが提供されている場合:
- Braze iOS SDK v3.17.0以降では、
startWithApiKey:inApplication:withLaunchOptions:withAppboyOptions:に渡すappboyOptionsパラメーター内のABKEndpointKeyを使用してエンドポイントをオーバーライドできます。カスタムエンドポイントURLのオーソリティを値として設定します(例:sdk.iad-01.braze.com、https://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のnull許容性
一般的な慣例とはやや異なり、Appboy.sharedInstance()シングルトンはオプショナルです。これは、startWithApiKey:が呼び出される前はsharedInstanceがnilであり、遅延初期化を使用する非標準ではあるものの無効ではない実装が存在するためです。
didFinishLaunchingWithOptions:デリゲート内でAppboyのsharedInstanceへのアクセスよりも前にstartWithApiKey:を呼び出す場合(標準的な実装)、Appboy.sharedInstance()?.changeUser("testUser")のようにオプショナルチェーンを使用することで、煩雑なチェックを回避できます。これは、非nullのsharedInstanceを前提としたObjective-Cの実装と同等の動作になります。
その他のリソース
SDKメソッドに関する追加のガイダンスとして、iOSクラスドキュメントの全文を参照できます。