Tenjin SDKは、AppLovinのインプレッションレベルの収益データを取得し、収益イベントをTenjinに送信できます。この実装により、AppLovinから配信された各広告インプレッションに関連する収益が送信されます。実装の手順は以下のとおりです。
- AppLovin iOS SDKをインストールします: https://developers.axon.ai/en/max/ios/overview/integration
最新のAppLovin iOS SDK(> 11.0.0)がインストールされていることを確認してください。 - 以下のサンプルコードを使用して、収益データをTenjinに連携してください。
Objective-C #
Objective-C
- (void)didPayRevenueForAd:(MAAd *)ad {
double revenue = ad.revenue; // In USD
// Create JSON object for Tenjin
NSDictionary *impressionData = @{
@"creative_id" : ad.creativeIdentifier ?: @"",
@"placement" : ad.placement ?: @"",
@"format" : ad.format.displayName ?: @"",
@"country" : [ALSdk shared].configuration.countryCode ?: @"",
@"ad_revenue_currency" : @"USD",
@"network_placement" : ad.networkPlacement ?: @"",
@"revenue_precision" : ad.revenuePrecision ?: @"",
@"ad_unit_id" : ad.adUnitIdentifier ?: @"",
@"revenue" : @(revenue),
@"network_name" : ad.networkName ?: @""
};
// Convert to JSON string
NSError *error;
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:impressionData
options:0
error:&error];
NSString *jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
// Send to Tenjin
[TenjinSDK appLovinImpressionFromJSON:jsonString];
NSLog(@"Sent impression to Tenjin: %@", jsonString);
}Swift #
Swift
func didPayRevenue(_ ad: MAAd) {
let revenue = ad.revenue // In USD
// Create JSON object for Tenjin
let impressionData: [String: Any] = [
"creative_id": ad.creativeIdentifier ?? "",
"placement": ad.placement ?? "",
"format": ad.format.displayName ?? "",
"country": ALSdk.shared().configuration.countryCode ?? "",
"ad_revenue_currency": "USD",
"network_placement": ad.networkPlacement ?? "",
"revenue_precision": ad.revenuePrecision ?? "",
"ad_unit_id": ad.adUnitIdentifier ?? "",
"revenue": revenue,
"network_name": ad.networkName ?? ""
]
// Convert to JSON string
do {
let jsonData = try JSONSerialization.data(withJSONObject: impressionData, options: [])
if let jsonString = String(data: jsonData, encoding: .utf8) {
// Send to Tenjin
TenjinSDK.appLovinImpressionFromJSON(jsonString)
print("Sent impression to Tenjin: \(jsonString)")
}
} catch {
print("Error creating JSON: \(error)")
}
}以下は、AppLovin MAXからのインプレッションレベルの収益データ入力例です。revenueパラメータには、string型ではなく、double型を使用してください。
| パラメータ | 必須? | 例 |
|---|---|---|
| creative_id | いいえ | 2813803997 |
| placement | いいえ | placementBanner |
| format | いいえ | BANNER |
| country | いいえ | DE |
| ad_revenue_currency | いいえ | USD |
| network_placement | いいえ | banner_regular |
| revenue_precision | いいえ | exact |
| ad_unit_id | いいえ | a7d1aa174c93c716 |
| revenue | はい | 4.7455200000000006E-5 |
| network_name | はい | APPLOVIN_EXCHANGE |
reference: https://developers.axon.ai/en/max/ios/overview/advanced-settings/#impression-level-user-revenue-API