From a8fad18ea31ad23c98fd77174c0cdd4bad0de8ea Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 08 四月 2021 19:11:01 +0800
Subject: [PATCH] 新版搜索过渡页优化

---
 BuWanVideo/src/com/weikou/beibeivideo/ui/recommend/RecommendFragment.java |  130 ++++++++++--------------------------------
 1 files changed, 32 insertions(+), 98 deletions(-)

diff --git a/BuWanVideo/src/com/weikou/beibeivideo/ui/recommend/RecommendFragment.java b/BuWanVideo/src/com/weikou/beibeivideo/ui/recommend/RecommendFragment.java
index 34b6fe8..358b54c 100644
--- a/BuWanVideo/src/com/weikou/beibeivideo/ui/recommend/RecommendFragment.java
+++ b/BuWanVideo/src/com/weikou/beibeivideo/ui/recommend/RecommendFragment.java
@@ -63,6 +63,7 @@
 import com.weikou.beibeivideo.util.JumpActivityUtil;
 import com.weikou.beibeivideo.util.ad.AdUtil;
 import com.weikou.beibeivideo.util.ad.ExpressAdManager;
+import com.weikou.beibeivideo.util.ad.HomeAdUtil;
 import com.weikou.beibeivideo.util.ui.DividerItemDecoration;
 import com.yeshi.appupdate.GoReview;
 import com.yeshi.appupdate.service.DownLoadFileService;
@@ -345,6 +346,7 @@
         if (position == 0) {
             getAdRecommendRight();
         }
+        loadCacheData();
     }
 
     private List<ExpressAdContainer> adList;
@@ -394,9 +396,6 @@
 
 
         if (!vp_recommend.hasAdapter()) {
-
-            int width = ScreenUtils.getScreenWidth(getContext());
-
             vp_recommend.initBanner(urlList, false, ratio)//寮�鍚�3D鐢诲粖鏁堟灉
                     .addPageMargin((int) (DimenUtils.dip2px(getContext(), 1) * 1.5), DimenUtils.dip2px(getContext(), 3))//鍙傛暟1page涔嬮棿鐨勯棿璺�,鍙傛暟2涓棿item璺濈杈圭晫鐨勯棿璺�
 //                    .addPointMargin(5)//鎸囩ず鍣ㄧ偣闂磋窛
@@ -410,74 +409,8 @@
                         public void onBannerClick(int position) {
                             if (position >= mHomeAds.size())
                                 return;
-                            Intent intent = null;
-                            if (mHomeAds.get(position).getLinkType() == 1) {
-                                intent = new Intent(getContext(),
-                                        VideoDetailActivity.class);
-                                intent.putExtra("video_info", mHomeAds.get(position)
-                                        .getVideo());
-                            } else if (mHomeAds.get(position).getLinkType() == 5) {
-                                try {
-                                    JSONObject object = new JSONObject(mHomeAds
-                                            .get(position).getParams()
-                                            .replace("\\", ""));
-                                    String thumb = object.optString("thumb");
-                                    String title = object.optString("title");
-                                    String desc = object.optString("desc");
-                                    String path = object.optString("path");
-                                    String username = object.optString("username");
-                                    String url = object.optString("url");
-
-                                    CustomShareDialog.Builder builder = new CustomShareDialog.Builder(getActivity());
-                                    builder.setMessage(desc);
-                                    builder.setUrl(url);
-                                    builder.setContentImage(thumb);
-                                    builder.setTitle(title);
-                                    builder.setPath(path);
-                                    builder.setUserName(username);
-                                    builder.setNegativeButton("鍙栨秷鍒嗕韩", new DialogInterface.OnClickListener() {
-                                        @Override
-                                        public void onClick(DialogInterface dialog, int which) {
-                                            dialog.dismiss();
-                                        }
-                                    });
-                                    builder.create().show();
-                                } catch (Exception e) {
-
-                                }
-
-                            } else {
-                                try {
-                                    intent = new Intent(getContext(), Class
-                                            .forName(mHomeAds.get(position).getClazz()));
-                                    JSONObject object = new JSONObject(mHomeAds
-                                            .get(position).getParams()
-                                            .replace("\\", ""));
-                                    if (mHomeAds.get(position).getClazz().contains("FXBrowserActivity") && object.optString("url").endsWith(".apk")) {
-//                                        startDownLoadFile(object.optString("url"));
-                                        return;
-                                    }
-                                    if (mHomeAds.get(position).getParams() != null) {
-                                        @SuppressWarnings("unchecked")
-                                        Iterator<String> its = object.keys();
-                                        while (its.hasNext()) {
-                                            String key = its.next();
-                                            String value = object.optString(key);
-                                            intent.putExtra(key, value);
-                                            intent.putExtra("isPush", true);
-                                        }
-                                    }
-                                } catch (ClassNotFoundException e) {
-                                    e.printStackTrace();
-                                } catch (Exception e) {
-                                    e.printStackTrace();
-                                }
-
-                            }
-                            if (intent != null)
-                                getContext().startActivity(intent);
+                            HomeAdUtil.jump(mHomeAds.get(position), getActivity());
                         }
-
                     });
         } else {
             vp_recommend.notifyDataSetChanged();
@@ -490,12 +423,14 @@
             {
                 DiskLruCache.Snapshot snapshot = null;
                 try {
-                    snapshot = cache.get(getKey("getHomeAd") + type.getId());
+                    snapshot = cache.get(getKey("getHomeAdNew") + type.getId());
                     if (snapshot != null) {
-                        List<HomeAd> adList = new ArrayList<HomeAd>();
+                        List<HomeAd> adList = new ArrayList<>();
                         String str = snapshot.getString(0);
                         try {
-                            JSONArray array = new JSONArray(str);
+                            JSONObject jsonObject = new JSONObject(str);
+                            String bannerRate = jsonObject.optString("bannerSizeRate");
+                            JSONArray array = jsonObject.optJSONArray("data");
                             HomeAd ad;
                             for (int i = 0; i < array.length(); i++) {
                                 ad = new HomeAd();
@@ -529,7 +464,7 @@
                             if (adList != null && adList.size() > 0) {
                                 mHomeAds.clear();
                                 mHomeAds.addAll(adList);
-                                setHomeAdsData(0.4375f);
+                                setHomeAdsData(StringUtils.isBlank(bannerRate) ? 0.4375f : new BigDecimal(bannerRate).floatValue());
                             }
                         } catch (JSONException e) {
                             e.printStackTrace();
@@ -544,31 +479,31 @@
                     }
                 }
             }
-            {
-                DiskLruCache.Snapshot snapshot = null;
-                try {
-                    snapshot = cache.get(getKey("getHomeType") + type.getId());
-                    if (snapshot != null) {
-                        Gson gson = new GsonBuilder().setFieldNamingPolicy(
-                                FieldNamingPolicy.UPPER_CAMEL_CASE).create();
-                        List<HomeType> homeTypes = gson.fromJson(
-                                snapshot.getString(0),
-                                new TypeToken<List<HomeType>>() {
-                                }.getType());
-                        mHomeTypes.clear();
-                        if (homeTypes != null) {
-                            mHomeTypes.addAll(homeTypes);
+
+            DiskLruCache.Snapshot snapshot = null;
+            try {
+                snapshot = cache.get(getKey("getHomeType") + type.getId());
+                if (snapshot != null) {
+                    Gson gson = new GsonBuilder().setFieldNamingPolicy(
+                            FieldNamingPolicy.UPPER_CAMEL_CASE).create();
+                    List<HomeType> homeTypes = gson.fromJson(
+                            snapshot.getString(0),
+                            new TypeToken<List<HomeType>>() {
+                            }.getType());
+                    mHomeTypes.clear();
+                    if (homeTypes != null) {
+                        mHomeTypes.addAll(homeTypes);
 //                            mRecommendNewAdapter.notifyDataSetChanged();
-                        }
-                    }
-                } catch (Exception e) {
-                    e.printStackTrace();
-                } finally {
-                    if (snapshot != null) {
-                        snapshot.close();
                     }
                 }
+            } catch (Exception e) {
+                e.printStackTrace();
+            } finally {
+                if (snapshot != null) {
+                    snapshot.close();
+                }
             }
+
         }
 
     }
@@ -743,9 +678,8 @@
 
                             if (position == 0) {
                                 DiskLruCache.Editor editor = cache
-                                        .edit(getKey("getHomeAd") + type.getId());
-                                editor.set(0, jsonObject.getJSONObject("Data")
-                                        .getJSONArray("data").toString());
+                                        .edit(getKey("getHomeAdNew") + type.getId());
+                                editor.set(0, jsonObject.getJSONObject("Data").toString());
                                 editor.commit();
                             }
                         }

--
Gitblit v1.8.0