Appearance
一、简介
主要介绍在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;
}
}2、创建Activity设置为MAIN入口
java
public class SplashActivity extends Activity{}xml
<activity
android:name=".SplashActivity"
android:label="@string/app_name"
android:launchMode="singleTask"
android:screenOrientation="portrait"
android:windowSoftInputMode="stateHidden|stateAlwaysHidden"
android:theme="@style/Theme.Testsdk.NoActionBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>3、创建开屏对象
测试广告位ID UNAD_TEST_UNIT_ID 应用上线时请替换为正式的广告位ID
java
UNADSplash unadSplash = new UNADSplash(this.getApplication());4、设置广告ID和属性
java
unadSplash.setAdUnitId("UNAD_TEST_UNIT_ID");
//applogo
unadSplash.setLogoPicture(R.drawable.logo_img);
//最长超时时间(秒)
unadSplash.setTimeoutTime(8);
//app名称
unadSplash.setAppName("");5、设置监听器
java
unadSplash.setAdViewListener(new UNADSplash.AdViewListener() {
@Override
public void onAdLoaded() {
Log.e("UNAD_SDK", "onAdViewLoaded splash");
}
@Override
public void onAdFailed(AdError error) {
startMain();
}
@Override
public void onAdClose() {
startMain();
}
@Override
public void onAdOpen() {
}
@Override
public void onAdClicked() {
}
});6、加载并打开广告
java
unadSplash.loadAd(SplashActivity.this);7、onPause和onResume事件监听
详细请参考DEMO
java
public boolean canJump = false;
protected void onPause() {
super.onPause();
canJump = false;
}
@Override
protected void onResume() {
super.onResume();
if (canJump) {
//打开开屏后的主activity
startMain();
}
canJump = true;
}
public void startMain() {
if (canJump) {
//.这里开始执行打开主activity
startActivity......
} else {
canJump = true;
}
}8、注意事项
1、测试广告位ID UNAD_TEST_UNIT_ID 应用上线时请替换为正式的广告位ID