ADX Library
  • ADXLibrary
  • Android
    • Integrate
    • SDK Integration
      • Initialize
      • Ad Formats
        • Banner Ad
        • Interstitial Ad
        • Native Ad
        • Rewarded Ad
          • AD(X)
          • AdMob
      • Ad Error
      • Ad Revenue
        • Banner Ad
        • Interstitial Ad
        • Native Ad
        • Rewarded Ad
      • Sample Application
    • Targeting Android 12
    • Change log
  • iOS
    • Integrate
    • SDK Integration
      • Initialize
      • Ad Formats
        • Banner Ad
        • Interstitial Ad
        • Native Ad
        • Rewarded Ad
          • AD(X)
          • AdMob
      • Ad Error
      • Ad Revenue
        • Banner Ad
        • Interstitial Ad
        • Native Ad
        • Rewarded Ad
      • Sample Application
    • Supporting iOS 14+
      • App Tracking Transparency
      • SKAdNetwork ID List
    • Change log
  • Unity
    • Integrate
    • SDK Integration
      • Initialize
      • Ad Formats
        • Banner Ad
        • Interstitial Ad
        • Rewarded Ad
          • AD(X)
          • AdMob (ADX v2.4.0 미만)
          • AdMob (ADX v2.4.0 이상)
      • Ad Error
      • Ad Revenue
        • Banner Ad
        • Interstitial Ad
        • Rewarded Ad
      • Sample Application
    • Change log
  • Flutter
    • Integrate
    • SDK Integration
      • Initialize
      • Ad Formats
        • Banner Ad
        • Interstitial Ad
        • Rewarded Ad
      • Sample Application
    • Change log
  • Appendix
    • SSV Callback (Server-Side Verification)
    • UMP (User Messaging Platform)
Powered by GitBook
On this page

Was this helpful?

  1. Android
  2. SDK Integration
  3. Ad Revenue

Native Ad

eCPM의 통화(Currency) 단위는 USD입니다.

private final AdxNativeAdFactory.NativeAdListener mListener = new AdxNativeAdFactory.NativeAdListener() {
    @Override
    public void onSuccess(String s, com.adxcorp.ads.nativeads.NativeAd nativeAd) {
        if (mAdxUnitId.equals(s)) {
            mNativeAd = nativeAd;
            mNativeAd.setOnPaidEventListener(new OnPaidEventListener() {
                @Override
                public void onPaidEvent(double ecpm) {
                    double revenue = ecpm / 1000;
                    
                    // Firebase Analytics 샘플
                    mFirebaseAnalytics = FirebaseAnalytics.getInstance(this);
                    Bundle params = new Bundle();
                    params.putString(FirebaseAnalytics.Param.AD_PLATFORM, "AD(X)");
                    params.putString(FirebaseAnalytics.Param.AD_FORMAT, "NativeAd");
                    params.putString(FirebaseAnalytics.Param.AD_UNIT_NAME, "ADX Native Ad");
                    params.putDouble(FirebaseAnalytics.Param.VALUE, revenue);
                    params.putString(FirebaseAnalytics.Param.CURRENCY, "USD");
                    mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.AD_IMPRESSION, params);
                    
                    // AppsFlyer 샘플
                    Map<String, String> customParams = new HashMap<>();
                    customParams.put(Scheme.AD_TYPE, "NativeAd");
                    customParams.put("ad_unit_name", "ADX Native Ad");
                    
                    AppsFlyerAdRevenue.logAdRevenue(
                          "AD(X)",
                          MediationNetwork.customMediation,
                          Currency.getInstance(Locale.US),
                          revenue,
                          customParams
                    );
                }
            });
        }
    }

    @Override
    public void onFailure(String s) {
    }
};
private val mListener: AdxNativeAdFactory.NativeAdListener = object : AdxNativeAdFactory.NativeAdListener {
    override fun onSuccess(s: String, nativeAd: NativeAd) {
	    mNativeAd = nativeAd
	    mNativeAd.setOnPaidEventListener(object : OnPaidEventListener() {
		    fun onPaidEvent(ecpm: Double) {
		        val revenue: Double = ecpm / 1000
		
			// Firebase Analytics 샘플
		        firebaseAnalytics = Firebase.analytics
		        firebaseAnalytics.logEvent(FirebaseAnalytics.Event.AD_IMPRESSION) {
		            param(FirebaseAnalytics.Param.AD_PLATFORM, "AD(X)")
		            param(FirebaseAnalytics.Param.AD_UNIT_NAME, "ADX Native Ad")
		            param(FirebaseAnalytics.Param.AD_FORMAT, "NativeAd")
		            param(FirebaseAnalytics.Param.VALUE, revenue)
		            param(FirebaseAnalytics.Param.CURRENCY, "USD")
		        }		        
		        
			// AppsFlyer 샘플
		        val customParams: MutableMap<String, String> = HashMap()
		        customParams[Scheme.AD_TYPE] = "NativeAd"
		        customParams["ad_unit_name"] = "ADX Native Ad"
		        
		        AppsFlyerAdRevenue.logAdRevenue(
		            "AD(X)",
		            MediationNetwork.customMediation,
		            Currency.getInstance(Locale.US),
		            revenue,
		            customParams
		        )
		    }
		})
    }

    override fun onFailure(s: String) {
    }
}

PreviousInterstitial AdNextRewarded Ad

Last updated 5 months ago

Was this helpful?