Tapjoy ダッシュボード に、Tapjoy の実装を手順を追って説明する 実装ガイド が組み込まれました。従来通り、この実装ガイドにしたがって実装を進める事も可能です。最後に登録したアプリの実装ガイドを直接参照するか、Tapjoy ダッシュボードでアプリを選択し、「ツール」メニューのドロップダウンから「実装方法」を選択してください。
CocoaPods は Objective-C および Swift の依存関係マネージャです。 Tapjoy SDK を常に最新に保つために、 CocoaPods をご使用いただく事を強く推奨します。
Tapjoy を利用する場合には、Podfile に下記のように付け加えます:
platform :ios, '10.0'
source 'https://github.com/CocoaPods/Specs.git'
use_frameworks!
target 'MyApp' do
pod 'TapjoySDK'
end
TapjoyはAppleのSKAdNetworkのネットワーク パートナーとして登録されています。TapjoyのネットワークIDとDSPパートナーのIDとともに、アプリのinfo.plist に追加して下さい。追加するIDのリストはXMLおよびJSONフォーマットでご利用いただけます:
詳細は こちら をご覧ください。
アプリがApp Tracking Transparencyを使用する場合、IDFA(広告ID)にアクセスするための許可を求めるダイアログを表示するには、Info.plistに NSUserTrackingUsageDescription
キーとIDFAをアプリで使用する許可を求めるカスタムメッセージの値を追加します。
例:
<key>NSUserTrackingUsageDescription</key>
<string>あなたに最適になるようにパーソナライズした広告をお届けできるようになります。</string>
指定した使用目的の記述の内容は App Tracking Transparency のトラッキング許可ダイアログとして下記のように表示されます:
プロジェクトに AppTrackingTransparency
フレームワークを追加し、 requestTrackingAuthorizationWithCompletionHandler:
を呼び出して許可を求めるダイアログを表示します。ベスト・プラクティスとして、 requestTrackingAuthorization
のコンプリーションハンドラが呼び出されるまでTapjoy connectの呼び出しを待つ事をお勧めします。こうすれば、意図したIDFAの値がTapjoyへのすべてのリクエストに使われるようになるからです。
#import <AppTrackingTransparency/AppTrackingTransparency.h>
...
- (void)fetchTrackingAuthorization {
[ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {
// Tapjoy connect をここで呼びます。
}];
}
次に、Tapjoy connect をアプリに実装します。 これにより、アプリからTapjoy SDK を"起動"します。
Tapjoy connect の実装は非常に重要です。この実装が正常に行われていない場合、Tapjoyの機能がいっさい動作しなくなるからです
Tapjoy connect を実装するためには、実装を行うアプリのTapjoy SDK Keyが必要になります。この値を取得するには Tapjoyダッシュボードで実装するアプリを選択肢、"設定" - "アプリ設定" をクリックします。画面下部の SDK Keyの箇所に各プラットフォームのSDK Keyが表示されています。
次に、アプリケーションのデリゲートファイルの application:didFinishLaunchingWithOptions
メソッドに以下のコードを追加します:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(tjcConnectSuccess:) name:TJC_CONNECT_SUCCESS object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(tjcConnectFail:) name:TJC_CONNECT_FAILED object:nil];
// Tapjoy デバッグモードを ON に
[Tapjoy setDebugEnabled:YES]; // 開発用途にのみ有効にします。 パブリッシュする前に必ず無効にして下さい。
// 自社管理仮想通貨を使う場合は、ユーザーIDをconnect flagで指定します。
NSDictionary *connectFlags = @{TJC_OPTION_USER_ID : @"<USER_ID_HERE>"};
[Tapjoy connect:@"SDK_KEY_GOES_HERE" options:connectFlags];
// Connect flagを使用しない場合は、省略する事もできます。
[Tapjoy connect:@"SDK_KEY_GOES_HERE"];
return YES;
}
setDebugEnabled と setUserID メソッドは connect よりも先に設定するようにして下さい。 ユーザーIDを connect よりも先に設定すれば、 AppLaunch 自動設定プレイスメントが正しいユーザーIDでコンテンツを取得できるようになります。また、Push to Earn コンテンツでも同様です。
より詳細については SDK リファレンス (英語) もご参照下さい:
Objective C および C++。
Tapjoy connect が完了したという通知 (または、失敗したという通知) を受けるには、セレクタとして前のステップで設定したメソッドを実装する必要があります:
- (void)tjcConnectSuccess:(NSNotification *)notifyObj
{
NSLog(@"Tapjoy connect succeeded");
}
- (void)tjcConnectFail:(NSNotification *)notifyObj
{
NSLog(@"Tapjoy connect failed");
}
コンパイルを行い、アプリを実行して下さい。 実装が正しい場合は下記のようなログが出力されます:
2020-01-29 16:01:55.422 App Name[25869:1433019] [TJLog level: 4] Connect success with type:0
Tapjoy ダッシュボードで 画面上部のナビゲーションバーにある"アナリティクス" をクリックし、画面左の "リアルタイムレポート"タブをクリックして表示される画面で"アクティブユーザー数"が反映される事を確認して下さい。
これでTapjoyがアプリで起動するようになりました。