Ver código fonte

优化广告流程

詹子聪 5 anos atrás
pai
commit
92307f5a71

+ 9 - 0
app/src/main/java/com/miekir/eden/ui/home/goods/detail/AdManager.java

@@ -20,6 +20,7 @@ public class AdManager {
 
     private long startTimeMillis;
     private MagnetBean magnetBean;
+    private boolean adFinished;
 
     public long getStartTimeMillis() {
         return startTimeMillis;
@@ -36,4 +37,12 @@ public class AdManager {
     public void setMagnetBean(MagnetBean magnetBean) {
         this.magnetBean = magnetBean;
     }
+
+    public boolean isAdFinished() {
+        return adFinished;
+    }
+
+    public void setAdFinished(boolean finish) {
+        this.adFinished = finish;
+    }
 }

+ 3 - 2
app/src/main/java/com/miekir/eden/ui/home/goods/detail/GoodsDetailActivity.java

@@ -214,7 +214,7 @@ public class GoodsDetailActivity extends BaseBeiActivity implements View.OnClick
         SystemTool.copyText(this, String.format(URL_TORRENT_FORMAT, BuildConfig.BASE_URL, s, f, u));
     }
 
-    private static final long TIME_MIN = 25000L;
+    private static final long TIME_MIN = 20000L;
     @Override
     protected void onResume() {
         super.onResume();
@@ -223,7 +223,7 @@ public class GoodsDetailActivity extends BaseBeiActivity implements View.OnClick
             return;
         }
 
-        // 小于25秒的都是没有按要求完成任务的
+        // 小于20秒的都是没有按要求完成任务的
         long durationMillis = System.currentTimeMillis() - AdManager.getInstance().getStartTimeMillis();
         if (durationMillis < TIME_MIN) {
             ToastTool.showShort(StringTool.getString(R.string.ad_title));
@@ -234,6 +234,7 @@ public class GoodsDetailActivity extends BaseBeiActivity implements View.OnClick
         // 是广告模式,看完广告之后,自动下载
         showLoading();
         seePresenter.getTorrentSecret(AdManager.getInstance().getMagnetBean());
+        AdManager.getInstance().setAdFinished(true);
         AdManager.getInstance().setMagnetBean(null);
     }
 }

+ 9 - 0
app/src/main/java/com/miekir/eden/ui/home/goods/detail/MagnetAdapter.java

@@ -61,6 +61,15 @@ public class MagnetAdapter extends BaseQuickAdapter<MagnetBean, BaseViewHolder>
             // 不是VIP
             if (UserInfoManager.getInstance().getSystemBean().isAdMode) {
                 // 广告模式,先看广告(领取优惠券)然后继续
+                if (AdManager.getInstance().isAdFinished()) {
+                    // 已经看过广告了
+                    if (mContext instanceof BaseBeiActivity) {
+                        ((BaseBeiActivity) mContext).showLoading();
+                    }
+                    seePresenter.getTorrentSecret(magnetBean);
+                    return;
+                }
+
                 AlertDialog alertDialog = new AlertDialog.Builder(mContext)
                         .setMessage(StringTool.getString(R.string.ad_title))
                         .setNegativeButton(StringTool.getString(R.string.cancel), (dialog, which) -> dialog.dismiss())