From 2c5b6e472c368e80d85b8ea2b461c9ea62981d9b Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期日, 08 十月 2023 11:28:56 +0800
Subject: [PATCH] 广告升级/bug修复

---
 BuWanVideo/src/com/weikou/beibeivideo/util/ad/AdUtil.java |  182 +++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 175 insertions(+), 7 deletions(-)

diff --git a/BuWanVideo/src/com/weikou/beibeivideo/util/ad/AdUtil.java b/BuWanVideo/src/com/weikou/beibeivideo/util/ad/AdUtil.java
index 187aecf..25f2326 100644
--- a/BuWanVideo/src/com/weikou/beibeivideo/util/ad/AdUtil.java
+++ b/BuWanVideo/src/com/weikou/beibeivideo/util/ad/AdUtil.java
@@ -1,26 +1,194 @@
 package com.weikou.beibeivideo.util.ad;
 
+import android.content.Context;
+import android.content.SharedPreferences;
+import android.os.Build;
+
+import com.weikou.beibeivideo.entity.ad.AdPositionEnum;
 import com.weikou.beibeivideo.entity.ad.AdTypeVO;
 import com.weikou.beibeivideo.util.BeibeiConstant;
+import com.weikou.beibeivideo.util.TimeUtil;
+import com.weikou.beibeivideo.util.TimeUtils;
+import com.weikou.beibeivideo.util.downutil.StringUtils;
 
-//绌垮北鐢插箍鍛�
+import org.json.JSONException;
+import org.json.JSONObject;
+
+//骞垮憡甯姪
 public class AdUtil {
 
+    public enum AD_TYPE {
+        gdt("骞跨偣閫�"), csj("绌垮北鐢�"), gdt2("骞跨偣閫�2.0");
 
-    public static int getSmallExpressAdType() {
+        private String name;
+
+        private AD_TYPE(String name) {
+            this.name = name;
+        }
+
+    }
+
+    public static AD_TYPE getSmallExpressAdType() {
         if (BeibeiConstant.AD_TYPE != null && AdTypeVO.TYPE_CSJ.equalsIgnoreCase(BeibeiConstant.AD_TYPE.getExpressSmallType())) {
-            return ExpressAdManager.SOURCE_CSJ;
+            return AD_TYPE.csj;
         } else {
-            return ExpressAdManager.SOURCE_GDT;
+            return AD_TYPE.gdt;
         }
     }
 
-    public static int getBigExpressAdType() {
+    public static AD_TYPE getBigExpressAdType() {
         if (BeibeiConstant.AD_TYPE != null && AdTypeVO.TYPE_CSJ.equalsIgnoreCase(BeibeiConstant.AD_TYPE.getExpressBigType())) {
-            return ExpressAdManager.SOURCE_CSJ;
+            return AD_TYPE.csj;
         } else {
-            return ExpressAdManager.SOURCE_GDT;
+            return AD_TYPE.gdt2;
         }
     }
 
+    /**
+     * 淇濆瓨骞垮憡閰嶇疆
+     *
+     * @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 AD_TYPE getAdType(Context context, AdPositionEnum position) {
+        SharedPreferences share = context.getSharedPreferences("adConfig", Context.MODE_PRIVATE);
+        String config = share.getString("config", "");
+        if (!StringUtils.isNullOrEmpty(config)) {//涓囦竴娌¤缃捣灏辩敤骞跨偣閫�
+            try {
+                JSONObject object = new JSONObject(config);
+                object = object.optJSONObject(position.getPositionName());
+                if (object != null)
+                    return AD_TYPE.valueOf(object.optString("type"));
+            } catch (JSONException e) {
+                e.printStackTrace();
+            } catch (Exception e1) {
+                return null;
+            }
+        } else {
+            return AD_TYPE.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.isNullOrEmpty(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;
+    }
+
+    /**
+     * 鏄惁鏄剧ずPPTV鍏嶅箍鍛婃潈鐩�
+     *
+     * @return
+     */
+    public static boolean showPPTVNoAdReward(Context context) {
+        return getAdType(context, AdPositionEnum.pptvNoAdReward) != null;
+    }
+
+    //鏄惁宸茬粡鑾峰緱pptv瑙嗛鍏嶅箍鍛婃潈鐩�
+    public static boolean isGetPPTVNoAdReward(Context context) {
+        SharedPreferences share = context.getSharedPreferences("adConfig", Context.MODE_PRIVATE);
+        long expireTime = share.getLong("pptvNoAdReward", 0);
+        if (System.currentTimeMillis() > expireTime) {
+            return false;
+        }
+        return true;
+    }
+
+    public static int getPPTVNoAdRewardLeftTimeWithMinute(Context context) {
+        SharedPreferences share = context.getSharedPreferences("adConfig", Context.MODE_PRIVATE);
+        long expireTime = share.getLong("pptvNoAdReward", 0);
+        if (System.currentTimeMillis() > expireTime) {
+            return 0;
+        } else {
+            return (int) ((expireTime - System.currentTimeMillis()) / (1000 * 60));
+        }
+    }
+
+    public static void setPPTVNoAdRewardSuccess(Context context) {
+        int hour = getPPTVNoAdRewardHour(context);
+        SharedPreferences share = context.getSharedPreferences("adConfig", Context.MODE_PRIVATE);
+        SharedPreferences.Editor editor = share.edit();
+        editor.putLong("pptvNoAdReward", System.currentTimeMillis() + 1000 * 60 * 60L * hour);
+        editor.commit();
+    }
+
+    //鑾峰彇pptv鍏嶅箍鍛婃潈鐩婄殑鏃堕棿锛堝皬鏃惰锛�
+    public static int getPPTVNoAdRewardHour(Context context) {
+        SharedPreferences share = context.getSharedPreferences("adConfig", Context.MODE_PRIVATE);
+        return share.getInt("pptvNoAdRewardHour", 3);
+    }
+
+    /**
+     * 璁剧疆pptv鏃犲箍鍛婃潈鐩婄殑鏃堕棿锛堝皬鏃惰锛�
+     *
+     * @param context
+     * @param hour
+     */
+    public static void setPPTVNoAdRewardHour(Context context, int hour) {
+        SharedPreferences share = context.getSharedPreferences("adConfig", Context.MODE_PRIVATE);
+        SharedPreferences.Editor editor = share.edit();
+        editor.putInt("pptvNoAdRewardHour", hour);
+        editor.commit();
+    }
+
+
+    /**
+     * 绌垮北鐢插箍鍛婃槸鍚﹂渶瑕佸垵濮嬪寲
+     *
+     * @return
+     */
+    public static boolean isCanInitCSJ() {
+        return Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP;
+//        return true;
+    }
+
+
+    // 鏄惁鍙互鏄剧ず鍗庝负鐨勫箍鍛�
+    public static boolean canShowAdHuaWei(Context context, AdPositionEnum position){
+        SharedPreferences share = context.getSharedPreferences("adConfig", Context.MODE_PRIVATE);
+        Long lastTime =   share.getLong("huawei_show_time_"+position.name(),0);
+        if( TimeUtils.millisToStringDate(System.currentTimeMillis(),"yyyyMMdd").equalsIgnoreCase( TimeUtils.millisToStringDate(lastTime,"yyyyMMdd"))) {
+            //鍚屼竴澶�
+            return false;
+        }
+        return true;
+    }
+
+    public static void showAdHuaWei(Context context, AdPositionEnum position){
+        SharedPreferences share = context.getSharedPreferences("adConfig", Context.MODE_PRIVATE);
+        SharedPreferences.Editor editor = share.edit();
+        editor.putLong("huawei_show_time_"+position.name(), System.currentTimeMillis());
+        editor.commit();
+    }
+
+
 }

--
Gitblit v1.8.0