AD(X)

    お知らせ

    この機能はBetaサービスです。改善のためのご意見やお問い合わせはAirbridge CSMまでお願いします。正式サービスではより良い機能を実装できるよう努めてまいります。

    Airbridge supports the SDK integration with AD(X). With the integration, you can import ad revenue data from AD(X) to Airbridge.

    SDK Integration

    Click the link below and install the AD(X) SDK.

    Send AD(X) data to Airbridge

    Configure data callbacks in the AD(X) SDK to send ad revenue data to the Airbridge SDK.

    Android SDK (v4)

    123456789101112131415161718192021222324252627282930
    rewardedAd.setOnPaidEventListener(object : OnPaidEventListener() {
        fun onPaidEvent(ecpm: Double) {
            val revenue = ecpm / 1000
            val adPlatform = "AD(X)"
            val adUnitID = "<ADX_BANNER_AD_UNIT_ID>"
            val adUnitName = "ADX Rewarded Ad"
            val adFormat = "RewardedAd"
            val currency = "USD"
    
            Airbridge.trackEvent(
                AirbridgeCategory.AD_IMPRESSION, 
                mapOf(
                    AirbridgeAttribute.ACTION to adUnitName,
                    AirbridgeAttribute.LABEL to adFormat,
                    AirbridgeAttribute.VALUE to revenue,
                    AirbridgeAttribute.AD_PARTNERS to mapOf(
                        "adx" to mapOf(
                            "ad_platform" to adPlatform,
                            "ad_unit_id" to adUnitID,
                            "ad_unit_name" to adUnitName,
                            "ad_format" to adFormat,
                            "value" to revenue,
                            "currency" to currency
                        )
                    ),
                    AirbridgeAttribute.CURRENCY to currency
                )
            )
        }
    })
    12345678910111213141516171819202122232425262728293031
    rewardedAd.setOnPaidEventListener(new OnPaidEventListener() {
        @Override
        public void onPaidEvent(double ecpm) {
            double revenue = ecpm / 1000;
            String adPlatform = "AD(X)";
            String adUnitID = "<ADX_BANNER_AD_UNIT_ID>";
            String adUnitName = "ADX Rewarded Ad";
            String adFormat = "RewardedAd";
            String currency = "USD";
    
            Airbridge.trackEvent(
                AirbridgeCategory.AD_IMPRESSION, 
                new HashMap() {{
                    put(AirbridgeAttribute.ACTION, adUnitName);
                    put(AirbridgeAttribute.LABEL, adFormat);
                    put(AirbridgeAttribute.VALUE, revenue);
                    put(AirbridgeAttribute.AD_PARTNERS, new HashMap() {{
                        put("adx", new HashMap() {{
                            put("ad_platform", adPlatform);
                            put("ad_unit_id", adUnitID);
                            put("ad_unit_name", adUnitName);
                            put("ad_format", adFormat);
                            put("value", revenue);
                            put("currency", currency);
                        }});
                    }});
                    put(AirbridgeAttribute.CURRENCY, currency);
                }}
            );
        }
    });

    Android SDK (Previous)

    12345678910111213141516171819202122232425262728293031
    rewardedAd.setOnPaidEventListener(object : OnPaidEventListener() {
        fun onPaidEvent(ecpm: Double) {
            val revenue = ecpm / 1000
            val adPlatform = "AD(X)"
            val adUnitID = "<ADX_BANNER_AD_UNIT_ID>"
            val adUnitName = "ADX Rewarded Ad"
            val adFormat = "RewardedAd"
            val currency = "USD"
    
            val event = Event("airbridge.adImpression")
    
            val adx = mutableMapOf<String, Any?>()
            adx["ad_platform"] = adPlatform
            adx["ad_unit_id"] = adUnitID
            adx["ad_unit_name"] = adUnitName
            adx["ad_format"] = adFormat
            adx["value"] = revenue
            adx["currency"] = currency
    
            val adPartners = mapOf("adx" to adx)
            event.action = adUnitName
            event.label = adFormat
            event.value = revenue
            event.semanticAttributes = mutableMapOf(
                "adPartners" to adPartners,
                "currency" to currency
            )
    
            Airbridge.trackEvent(event)
        }
    })
    1234567891011121314151617181920212223242526272829303132333435
    rewardedAd.setOnPaidEventListener(new OnPaidEventListener() {
        @Override
        public void onPaidEvent(double ecpm) {
            double revenue = ecpm / 1000;
            String adPlatform = "AD(X)";
            String adUnitID = "<ADX_BANNER_AD_UNIT_ID>";
            String adUnitName = "ADX Rewarded Ad";
            String adFormat = "RewardedAd";
            String currency = "USD";
    
            Event event = Event("airbridge.adImpression");
    
            Map<String, Object> adx = new HashMap<>();
            adx.put("ad_platform", adPlatform);
            adx.put("ad_unit_id", adUnitID);
            adx.put("ad_unit_name", adUnitName);
            adx.put("ad_format", adFormat);
            adx.put("value", revenue);
            adx.put("currency", currency);
    
            Map<String, Object> adPartners = new HashMap<>();
            adPartners.put("adx", adx);
    
            Map<String, Object> semanticAttributes = new HashMap<>();
            semanticAttributes.put("adPartners", adPartners);
            semanticAttributes.put("currency", currency);
    
            event.setAction(adUnitName);
            event.setLabel(adFormat);
            event.setValue(revenue);
            event.setSemanticAttributes(semanticAttributes);
    
            Airbridge.trackEvent(event);
        }
    });

    iOS SDK (v4)

    12345678910111213141516171819202122232425262728
    rewardedAd.paidEventHandler = { eCPM in
        let revenue = eCPM / 1000
        let adPlatform = "AD(X)"
        let adUnitID = "<ADX_BANNER_AD_UNIT_ID>"
        let adUnitName = "ADX Rewarded Ad"
        let adFormat = "RewardedAd"
        let currency = "USD"
    
        Airbridge.trackEvent(
            category: AirbridgeCategory.AD_IMPRESSION,
            semanticAttributes: [
                AirbridgeAttribute.ACTION: adUnitName,
                AirbridgeAttribute.LABEL: adFormat,
                AirbridgeAttribute.VALUE: revenue,
                AirbridgeAttribute.AD_PARTNERS: [
                    "adx": [
                        "ad_platform": adPlatform,
                        "ad_unit_id": adUnitID,
                        "ad_unit_name": adUnitName,
                        "ad_format": adFormat,
                        "value": revenue,
                        "currency": currency
                    ]
                ],
                AirbridgeAttribute.CURRENCY: currency
            ]
        )
    }
    12345678910111213141516171819202122232425
    self.rewardedAd.paidEventHandler = ^(double eCPM) {
        double revenue = eCPM / 1000;
        NSString* adPlatform = "AD(X)";
        NSString* adUnitID = "<ADX_BANNER_AD_UNIT_ID>";
        NSString* adUnitName = "ADX Rewarded Ad";
        NSString* adFormat = "RewardedAd";
        NSString* currency = "USD";
    
        [Airbridge trackEventWithCategory:AirbridgeCategory.AD_IMPRESSION semanticAttributes:@{
            AirbridgeAttribute.ACTION: adUnitName,
            AirbridgeAttribute.LABEL: adFormat,
            AirbridgeAttribute.VALUE: @(revenue),
            AirbridgeAttribute.AD_PARTNERS: @{
                @"adx": @{
                    @"ad_platform": adPlatform,
                    @"ad_unit_id": adUnitID,
                    @"ad_unit_name": adUnitName,
                    @"ad_format": adFormat,
                    @"value": @(revenue),
                    @"currency": currency
                }
            },
            @"currency": currency
        }];
    };

    iOS SDK (Previous)

    1234567891011121314151617181920212223242526272829
    rewardedAd.paidEventHandler = { eCPM in
        let revenue = eCPM / 1000
        let adPlatform = "AD(X)"
        let adUnitID = "<ADX_BANNER_AD_UNIT_ID>"
        let adUnitName = "ADX Rewarded Ad"
        let adFormat = "RewardedAd"
        let currency = "USD"
    
        let event = ABInAppEvent()
        event?.setCategory("airbridge.adImpression")
        event?.setAction(adUnitName)
        event?.setLabel(adFormat)
        event?.setValue(revenue)
        event?.setSemantics([
            "adPartners": [
                "adx": [
                    "ad_platform": adPlatform,
                    "ad_unit_id": adUnitID,
                    "ad_unit_name": adUnitName,
                    "ad_format": adFormat,
                    "value": revenue,
                    "currency": currency
                ]
            ],
          	"currency": currency
        ])
    
        event?.send()
    }
    1234567891011121314151617181920212223242526272829
    self.rewardedAd.paidEventHandler = ^(double eCPM) {
        double revenue = eCPM / 1000;
        NSString* adPlatform = "AD(X)";
        NSString* adUnitID = "<ADX_BANNER_AD_UNIT_ID>";
        NSString* adUnitName = "ADX Rewarded Ad";
        NSString* adFormat = "RewardedAd";
        NSString* currency = "USD";
    
        ABInAppEvent* event = [[ABInAppEvent alloc] init];
        [event setCategory:@"airbridge.adImpression"];
        [event setAction:adUnitName];
        [event setLabel:adFormat];
        [event setValue:revenue];
        [event setSemantics:@{
            @"adPartners": @{
                @"adx": @{
                    @"ad_platform": adPlatform,
                    @"ad_unit_id": adUnitID,
                    @"ad_unit_name": adUnitName,
                    @"ad_format": adFormat,
                    @"value": @(revenue),
                    @"currency": currency
                }
            },
            @"currency": currency
        }];
    
        [event send];
    };

    Unity SDK (v4)

    1234567891011121314151617181920212223242526272829303132333435363738
    rewardedAd.OnPaidEvent += RewardedAd_OnPaidEvent;
    
    void RewardedAd_OnPaidEvent(double ecpm)
    {
        var revenue = ecpm / 1000f;
        var adPlatform = "AD(X)";
        var adUnitID = "<ADX_BANNER_AD_UNIT_ID>";
        var adUnitName = "ADX Rewarded Ad";
        var adFormat = "RewardedAd";
        var currency = "USD";
    
        Airbridge.TrackEvent(
            category: AirbridgeCategory.AD_IMPRESSION,
            semanticAttributes: new Dictionary<string, object>()
            {
                { AirbridgeAttribute.ACTION, adUnitName },
                { AirbridgeAttribute.LABEL, adFormat },
                { AirbridgeAttribute.VALUE, revenue },
                {
                    AirbridgeAttribute.AD_PARTNERS, new Dictionary<string, object>()
                    {
                        {
                            "adx", new Dictionary<string, object>()
                            {
                                { "ad_platform", adPlatform },
                                { "ad_unit_id", adUnitID },
                                { "ad_unit_name", adUnitName },
                                { "ad_format", adFormat },
                                { "value", revenue },
                                { "currency", currency }
                            }
                        }
                    }
                },
                { AirbridgeAttribute.CURRENCY, currency }
            }
        );
    }

    Unity SDK (Previous)

    1234567891011121314151617181920212223242526272829303132
    rewardedAd.OnPaidEvent += RewardedAd_OnPaidEvent;
    
    void RewardedAd_OnPaidEvent(double ecpm)
    {
        var revenue = ecpm / 1000f;
        var adPlatform = "AD(X)";
        var adUnitID = "<ADX_BANNER_AD_UNIT_ID>";
        var adUnitName = "ADX Rewarded Ad";
        var adFormat = "RewardedAd";
        var currency = "USD";
    
        AirbridgeEvent @event = new AirbridgeEvent("airbridge.adImpression");
    
        var adx = new Dictionary<string, object>();
        adx["ad_platform"] = adPlatform;
        adx["ad_unit_id"] = adUnitID;
        adx["ad_unit_name"] = adUnitName;
        adx["ad_format"] = adFormat;
        adx["value"] = revenue;
        adx["currency"] = currency;
    
        var adPartners = new Dictionary<string, object>();
        adPartners["adx"] = adx;
    
        @event.SetAction(adUnitName);
        @event.SetLabel(adFormat);
        @event.SetValue(revenue);
        @event.AddSemanticAttribute("adPartners", adPartners);
        @event.AddSemanticAttribute("currency", currency);
    
        AirbridgeUnity.TrackEvent(@event);
    }