package com.yeshi.base.utils.ad;
|
|
import android.content.Context;
|
import android.content.SharedPreferences;
|
import android.os.Build;
|
|
import com.lcjian.library.util.common.StringUtils;
|
import com.yeshi.base.entity.ad.AdPositionEnum;
|
|
import org.json.JSONException;
|
import org.json.JSONObject;
|
|
//广告帮助
|
public class AdUtil {
|
|
public enum AD_TYPE {
|
gdt("广点通"), csj("穿山甲"), gdt2("广点通2.0");
|
|
private String name;
|
|
private AD_TYPE(String name) {
|
this.name = name;
|
}
|
|
}
|
|
/**
|
* 保存广告配置
|
*
|
* @param context
|
* @param json
|
*/
|
public static void saveAdConfig(Context context, JSONObject json) {
|
SharedPreferences share = context.getSharedPreferences("adConfig", Context.MODE_PRIVATE);
|
SharedPreferences.Editor editor = share.edit();
|
editor.putString("config", json.toString());
|
editor.commit();
|
}
|
|
/**
|
* 获取广告类型
|
*
|
* @param context
|
* @param position
|
* @return
|
*/
|
public static AdTypeEnum getAdType(Context context, AdPositionEnum position) {
|
SharedPreferences share = context.getSharedPreferences("adConfig", Context.MODE_PRIVATE);
|
String config = share.getString("config", "");
|
if (!StringUtils.isEmpty(config)) {//万一没设置起就用广点通
|
try {
|
JSONObject object = new JSONObject(config);
|
object = object.optJSONObject(position.getPositionName());
|
if (object != null)
|
return AdTypeEnum.valueOf(object.optString("type"));
|
} catch (JSONException e) {
|
e.printStackTrace();
|
} catch (Exception e1) {
|
return null;
|
}
|
} else {
|
return AdTypeEnum.gdt;
|
}
|
return null;
|
}
|
|
public static String getAdPid(Context context, AdPositionEnum position) {
|
SharedPreferences share = context.getSharedPreferences("adConfig", Context.MODE_PRIVATE);
|
String config = share.getString("config", "");
|
if (!StringUtils.isEmpty(config)) {//万一没设置起就用广点通
|
try {
|
JSONObject object = new JSONObject(config);
|
object = object.optJSONObject(position.getPositionName());
|
if (object != null)
|
return object.optString("pid");
|
} catch (JSONException e) {
|
e.printStackTrace();
|
} catch (Exception e1) {
|
return null;
|
}
|
} else {
|
return null;
|
}
|
return null;
|
}
|
|
/**
|
* 穿山甲广告是否需要初始化
|
*
|
* @return
|
*/
|
public static boolean isCanInitCSJ() {
|
return Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP;
|
// return false;
|
}
|
|
|
}
|