Skip to content

一、简介

主要介绍在Android项目中如何集成 UNAD SDK的信息流广告:

二、集成

1、在自己的Application 中初始化SDK

Adgo-app-2081508635 为测试ID, 应用上线时请替换为正式的 APP ID

java
String processName = AppUtils.getProcessName(this);
String packageName = this.getPackageName();
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
   if (processName != null && !processName.equalsIgnoreCase(packageName)) {
        WebView.setDataDirectorySuffix(processName);
   }
}
if (processName != null && processName.equalsIgnoreCase(packageName)) {
  //请填写您的APPID
  String unadAppid = "Adgo-app-2081508635";
  // 主线程通过调用此方法初始化 SDK。
   UNAD.initialize(unadAppid, getApplicationContext(), new UNAD.InitCallback() {
      @Override
      public void onSuccess() {
         Log.i(TAG, "onSuccess");
      }

      @Override
      public void onError(AdError error) {
         Log.i(TAG, "error:" + error.getMessage());
      }
	});
}

// AppUtils.getProcessName 方法
public class AppUtils {

    public static String getProcessName(Context context) {
        if (context == null) return null;
        ActivityManager manager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
        for (ActivityManager.RunningAppProcessInfo processInfo : manager.getRunningAppProcesses()) {
            if (processInfo.pid == android.os.Process.myPid()) {
                return processInfo.processName;
            }
        }
        return null;
    }
}

// AppUtils.getProcessName 方法
public class AppUtils {

    public static String getProcessName(Context context) {
        if (context == null) return null;
        ActivityManager manager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
        for (ActivityManager.RunningAppProcessInfo processInfo : manager.getRunningAppProcesses()) {
            if (processInfo.pid == android.os.Process.myPid()) {
                return processInfo.processName;
            }
        }
        return null;
    }
}

2、初始化广告并监听

java
mADManager = new UNADFeedAd(this, "UNAD_TEST_UNIT_ID", new UNADFeedAd.AdViewListener(){
       
	public void onAdLoaded(UNADFeedAdView unadFeedAdView) {
    
	}


	@Override
	public void onAdFailed(AdError error) {
	}

	@Override
	public void onAdClicked(UNADFeedAdView unadFeedAdView) {
	}

	@Override
	public void onAdClose(UNADFeedAdView unadFeedAdView) {
		//移除布局
		adlayout.removeView(unadFeedAdView);
	}

	@Override
	public void onAdOpen(UNADFeedAdView unadFeedAdView) {
	}

});

3、拉取广告

java
mADManager.loadAd();

4、渲染广告

java
//用广告返回的视图去打开
unadFeedAdView.render();

5、注意事项

1、测试广告位ID UNAD_TEST_UNIT_ID 应用上线时请替换为正式的广告位ID

2、当系统的onResume被调用时候,必须要调用mADManager的onResume方法

当系统的onPause被调用时候,必须要调用mADManager的onPause方法

3、有需要时可以进行资源的销毁

UNADFeedAdView.destroy();
mADManager.release();