admin
2021-04-20 e08fb55566539c5b0c489ab6f4b565454e2ae375
bug修复
23个文件已修改
6个文件已添加
644 ■■■■■ 已修改文件
BuWanVideo/AndroidManifest.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/res/drawable-xhdpi/ic_gold_corn_sign_in_action.png 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/res/drawable-xhdpi/ic_gold_corn_sign_in_gold.png 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/res/drawable-xhdpi/icon_category.png 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/res/drawable-xhdpi/icon_player_ad_input.png 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/res/drawable/shape_splash_ad.xml 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/res/layout/activity_category.xml 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/res/layout/activity_main.xml 25 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/res/layout/browser_activity.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/res/layout/item_gold_corn_sign_in.xml 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/res/layout/item_video_detail_ad.xml 58 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/res/layout/navigation_bottom_bar.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/res/values/colors.xml 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/src/com/weikou/beibeivideo/entity/ad/PlayVideoPreADSetting.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/src/com/weikou/beibeivideo/entity/vo/SignInInfo.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/src/com/weikou/beibeivideo/ui/ad/PlayVideoPreADFragment.java 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/src/com/weikou/beibeivideo/ui/goldcorn/GoldCornAdapter.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/src/com/weikou/beibeivideo/ui/main/CategoryActivity.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/src/com/weikou/beibeivideo/ui/main/GoldCornFragment.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/src/com/weikou/beibeivideo/ui/main/MainActivity.java 67 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/src/com/weikou/beibeivideo/ui/main/MineFragment.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/src/com/weikou/beibeivideo/ui/media/VideoDetailActivity.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/src/com/weikou/beibeivideo/ui/media/VideoDetailActivity2.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/src/com/weikou/beibeivideo/ui/mine/PPTVPlayFragment.java 181 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/src/com/weikou/beibeivideo/ui/recommend/SearchActivity.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/src/com/weikou/beibeivideo/ui/recommend/SearchResultActivity.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/src/com/weikou/beibeivideo/util/JumpActivityUtil.java 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
library-common/res/drawable/color_progressbar.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
library-gallery/src/main/AndroidManifest.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo/AndroidManifest.xml
@@ -112,6 +112,13 @@
            android:label="@string/app_name"
            android:screenOrientation="portrait"
            android:windowSoftInputMode="stateHidden"></activity>
        <activity
            android:name="com.weikou.beibeivideo.ui.main.CategoryActivity"
            android:label="@string/app_name"
            android:screenOrientation="portrait"
            android:windowSoftInputMode="stateHidden"></activity>
        <activity
            android:name="com.weikou.beibeivideo.ui.media.VideoDetailActivity"
            android:configChanges="orientation|screenSize|keyboardHidden"
BuWanVideo/res/drawable-xhdpi/ic_gold_corn_sign_in_action.png
BuWanVideo/res/drawable-xhdpi/ic_gold_corn_sign_in_gold.png
BuWanVideo/res/drawable-xhdpi/icon_category.png
BuWanVideo/res/drawable-xhdpi/icon_player_ad_input.png
BuWanVideo/res/drawable/shape_splash_ad.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <corners android:radius="6dp" />
    <solid android:color="#80999999" />
    <corners android:radius="20dp" />
    <solid android:color="#a4000000" />
    <padding
        android:bottom="6dp"
        android:left="15dp"
        android:right="10dp"
        android:top="6dp"></padding>
</shape>
BuWanVideo/res/layout/activity_category.xml
New file
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/page_bg_color"
    android:orientation="vertical">
    <include layout="@layout/view_activity_top_navbar"></include>
    <FrameLayout
        android:id="@+id/fl_container"
        android:layout_width="match_parent"
        android:layout_height="match_parent"></FrameLayout>
</LinearLayout>
BuWanVideo/res/layout/activity_main.xml
@@ -114,33 +114,20 @@
            </FrameLayout>
            <FrameLayout
                android:id="@+id/fl_right_ad"
                android:layout_marginLeft="14dp"
                android:id="@+id/fl_category"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center_vertical"
                android:layout_marginRight="8dp">
                <FrameLayout
                <ImageView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="center">
                    android:src="@drawable/icon_category">
                    <ImageView
                        android:id="@+id/nat"
                        android:layout_width="30dp"
                        android:layout_height="30dp"
                        android:layout_gravity="center"
                        android:padding="4dp"></ImageView>
                    <ImageView
                        android:id="@+id/iv_red_dot"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="top|right"
                        android:layout_marginTop="2dp"
                        android:layout_marginRight="2dp"
                        android:src="@drawable/ic_red_point"></ImageView>
                </FrameLayout>
                </ImageView>
            </FrameLayout>
BuWanVideo/res/layout/browser_activity.xml
@@ -12,7 +12,7 @@
        style="?android:attr/progressBarStyleHorizontal"
        android:layout_width="match_parent"
        android:layout_height="3dp"
        android:background="@color/yellow" />
        android:background="@color/nav_highloght_text_color" />
    <com.weikou.beibeivideo.util.x5.X5WebView
BuWanVideo/res/layout/item_gold_corn_sign_in.xml
@@ -100,23 +100,24 @@
                android:orientation="vertical">
                <ImageView
                    android:layout_width="76dp"
                    android:layout_height="106dp"
                    android:layout_width="wrap_content"
                    android:layout_height="0dp"
                    android:layout_weight="1"
                    android:layout_gravity="center_horizontal|top"
                    android:layout_marginTop="40dp"
                    android:src="@drawable/ic_goldcorn_logo"></ImageView>
                    android:src="@drawable/ic_gold_corn_sign_in_gold"></ImageView>
                <ImageView
                    android:id="@+id/iv_input"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="2dp"
                    android:src="@drawable/icon_gold_corn_title"></ImageView>
                    android:layout_marginTop="-5dp"
                    android:src="@drawable/ic_gold_corn_sign_in_action"></ImageView>
                <FrameLayout
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="6dp">
                    android:layout_marginTop="16dp">
                    <TextView
                        android:id="@+id/tv_sign_in"
@@ -139,7 +140,7 @@
                    android:id="@+id/tv_sign_in_day_count"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="7dp"
                    android:layout_marginTop="14dp"
                    android:background="@drawable/shape_gold_corn_sign_in_cout_bg"
                    android:text="连续签到:99天"
                    android:textColor="#FFFFFF"
BuWanVideo/res/layout/item_video_detail_ad.xml
@@ -52,38 +52,43 @@
                    </ProgressBar>
                    <TextView
                        android:id="@+id/tv_skip"
                    <LinearLayout
                        android:id="@+id/ll_skip"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="top|right"
                        android:layout_margin="3dp"
                        android:layout_marginTop="5dp"
                        android:background="@drawable/shape_splash_ad"
                        android:clickable="false"
                        android:paddingLeft="8dp"
                        android:paddingTop="2dp"
                        android:paddingRight="8dp"
                        android:paddingBottom="2dp"
                        android:text=""
                        android:textColor="@color/white"
                        android:textSize="14sp"
                        android:visibility="gone"></TextView>
                        android:gravity="center_vertical|right"
                        android:orientation="horizontal">
                        <TextView
                            android:id="@+id/tv_skip"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="5s 后跳过"
                            android:textColor="#ffffffff"
                            android:textSize="12sp" />
                        <View
                            android:id="@+id/v_cutline"
                            android:layout_width="1dp"
                            android:layout_height="match_parent"
                            android:layout_marginLeft="8dp"
                            android:layout_marginRight="8dp"></View>
                        <TextView
                            android:id="@+id/tv_action"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:drawableRight="@drawable/icon_player_ad_input"
                            android:drawablePadding="7dp"
                            android:text="0元看本片"
                            android:textColor="#ffffdf99"
                            android:textSize="12sp" />
                    <TextView
                        android:id="@+id/tv_no_ad_reward"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center_horizontal|bottom"
                        android:background="@drawable/shape_video_ad_no_ad_reward_bg"
                        android:drawableLeft="@drawable/icon_no_ad_reward"
                        android:drawablePadding="8.5dp"
                        android:gravity="center"
                        android:text="获取免广告权益"
                        android:textColor="@color/white"
                        android:layout_margin="4dp"
                        android:drawableRight="@drawable/icon_no_ad_reward_input"
                        android:textSize="12sp"></TextView>
                    </LinearLayout>
                </FrameLayout>
@@ -97,7 +102,6 @@
            android:visibility="gone"></FrameLayout>
    </com.lcjian.library.widget.RatioLayout>
</LinearLayout>
BuWanVideo/res/layout/navigation_bottom_bar.xml
@@ -15,7 +15,7 @@
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:paddingTop="8dp"
        android:paddingTop="1dp"
        android:paddingBottom="8dp">
        <RadioButton
BuWanVideo/res/values/colors.xml
@@ -70,6 +70,8 @@
    <color name="nav_highloght_text_color">#159FFF</color>
    <color name="nav_text_color">#717481</color>
    <color name="progress_bar_bg_color">#159FFF</color>
    <!--主菜单颜色 -->
    <color name="main_menu_highloght_text_color">#0052F6</color>
    <color name="main_menu_text_color">#999999</color>
BuWanVideo/src/com/weikou/beibeivideo/entity/ad/PlayVideoPreADSetting.java
@@ -14,7 +14,7 @@
    private String csjPid;//穿山甲的pid
    //是否需要显示激励视频提示
    private boolean needShowRewardNotify;
    private String otherAction;
    public PlayVideoPreADSetting(AdUtil.AD_TYPE adType, String gdtAppId, String gdtPid, String csjPid) {
@@ -68,11 +68,11 @@
    }
    public boolean isNeedShowRewardNotify() {
        return needShowRewardNotify;
    public String getOtherAction() {
        return otherAction;
    }
    public void setNeedShowRewardNotify(boolean needShowRewardNotify) {
        this.needShowRewardNotify = needShowRewardNotify;
    public void setOtherAction(String otherAction) {
        this.otherAction = otherAction;
    }
}
BuWanVideo/src/com/weikou/beibeivideo/entity/vo/SignInInfo.java
@@ -1,5 +1,6 @@
package com.weikou.beibeivideo.entity.vo;
import com.weikou.beibeivideo.entity.JumpDetail;
import com.weikou.beibeivideo.ui.goldcorn.GoldCornAdapter;
import java.io.Serializable;
@@ -52,9 +53,11 @@
        this.signDay = signDay;
    }
    public static class SignInConfig implements Serializable{
    public static class SignInConfig implements Serializable {
        private String recordUrl;
        private String ruleUrl;
        private JumpDetail userJump;
        private String userJumpParams;
        public String getRecordUrl() {
            return recordUrl;
@@ -71,5 +74,22 @@
        public void setRuleUrl(String ruleUrl) {
            this.ruleUrl = ruleUrl;
        }
        public JumpDetail getUserJump() {
            return userJump;
        }
        public void setUserJump(JumpDetail userJump) {
            this.userJump = userJump;
        }
        public String getUserJumpParams() {
            return userJumpParams;
        }
        public void setUserJumpParams(String userJumpParams) {
            this.userJumpParams = userJumpParams;
        }
    }
}
BuWanVideo/src/com/weikou/beibeivideo/ui/ad/PlayVideoPreADFragment.java
@@ -4,15 +4,13 @@
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Bundle;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.TextView;
@@ -37,11 +35,16 @@
import com.weikou.beibeivideo.util.BeibeiConstant;
import com.weikou.beibeivideo.util.DimenUtils;
import com.weikou.beibeivideo.util.ad.AdUtil;
import com.weikou.beibeivideo.util.downutil.StringUtils;
import com.weikou.beibeivideo.util.ui.IPageEventListener;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
/**
 * 视频播放前贴广告
@@ -61,9 +64,14 @@
    private NativeUnifiedADData mGDTAdData;
    private LinearLayout ll_skip;
    private TextView tv_skip;
    private TextView tv_no_ad_reward;
    private TextView tv_action;
    private View v_cutline;
    private ProgressBar pb_progress;
@@ -101,7 +109,9 @@
        mContainer = root.findViewById(R.id.native_ad_container);
        img_poster = root.findViewById(R.id.img_poster);
        tv_skip = root.findViewById(R.id.tv_skip);
        tv_no_ad_reward = root.findViewById(R.id.tv_no_ad_reward);
        ll_skip = root.findViewById(R.id.ll_skip);
        tv_action = root.findViewById(R.id.tv_action);
        v_cutline = root.findViewById(R.id.v_cutline);
        pb_progress = root.findViewById(R.id.pb_progress);
        fl_ad = root.findViewById(R.id.fl_ad);
    }
@@ -139,7 +149,7 @@
                        tv_skip.setText("跳过");
                        tv_skip.setClickable(true);
                    }
                    tv_skip.setVisibility(View.VISIBLE);
                    ll_skip.setVisibility(View.VISIBLE);
                    autoTimer(view);
                }
            };
@@ -165,7 +175,7 @@
        Log.i(TAG, "loadVideoAD");
        if (tv_skip == null)
            return;
        tv_skip.setVisibility(View.GONE);
        ll_skip.setVisibility(View.GONE);
        if (mGDTAdData != null)
            mGDTAdData.destroy();
        pb_progress.setVisibility(View.VISIBLE);
@@ -176,17 +186,20 @@
            pid = BeibeiConstant.GDT_DOWNLOAD_HINT_ID;
        tv_skip.setText(AD_DURATION + "s后可跳过");
        tv_skip.setVisibility(View.GONE);
        if (setting.isNeedShowRewardNotify()) {
            tv_no_ad_reward.setVisibility(View.VISIBLE);
        ll_skip.setVisibility(View.GONE);
        if (!StringUtils.isNullOrEmpty(setting.getOtherAction())) {
            tv_action.setVisibility(View.VISIBLE);
            v_cutline.setVisibility(View.VISIBLE);
            tv_action.setText(setting.getOtherAction());
        } else {
            tv_no_ad_reward.setVisibility(View.GONE);
            tv_action.setVisibility(View.GONE);
            v_cutline.setVisibility(View.GONE);
        }
        tv_no_ad_reward.setOnClickListener(new View.OnClickListener() {
        tv_action.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (videoAdListener != null)
                    videoAdListener.noAdRewardClick();
                    videoAdListener.onOtherClick(tv_action.getText() + "");
            }
        });
//        loadCSJ(CSJConstant.PLAY_VIDEO_PRE, videoAdListener);
@@ -356,7 +369,7 @@
                                @Override
                                public void onVideoCompleted() {
                                    Log.d(TAG, "onVideoCompleted: ");
                                    tv_skip.setVisibility(View.GONE);
                                    ll_skip.setVisibility(View.GONE);
                                    if (videoAdListener != null) {
                                        videoAdListener.finishPlay();
                                    }
@@ -430,7 +443,7 @@
                    mGDTAdData.stopVideo();
                if (videoAdListener != null)
                    videoAdListener.finishPlay();
                tv_skip.setVisibility(View.GONE);
                ll_skip.setVisibility(View.GONE);
            }
        });
    }
@@ -533,8 +546,8 @@
        //开始播放
        public void startPlay();
        //免广告权益
        public void noAdRewardClick();
        //附加字段点击事件
        public void onOtherClick(String name);
    }
BuWanVideo/src/com/weikou/beibeivideo/ui/goldcorn/GoldCornAdapter.java
@@ -169,6 +169,15 @@
                }
            });
            signInHolder.mAquery.id(R.id.iv_input).clicked(new OnClickListener() {
                @Override
                public void onClick(View v) {
                    if (signInInfo != null && signInInfo.getSignInConfig() != null && signInInfo.getSignInConfig().getUserJump() != null) {
                        JumpActivityUtil.jumpPage(mContext, signInInfo.getSignInConfig().getUserJump(), JumpActivityUtil.getParamsJSON(signInInfo.getSignInConfig().getUserJumpParams()));
                    }
                }
            });
            if (signInInfo.isCanSignIn()) {
                signInHolder.mAquery.id(R.id.tv_sign_in).enabled(true);
            } else {
@@ -396,6 +405,7 @@
    }
    public interface IGoldCornActionListener {
        public void onClick(int p, GoldCornTask task);
        public void onSignIn();
BuWanVideo/src/com/weikou/beibeivideo/ui/main/CategoryActivity.java
New file
@@ -0,0 +1,58 @@
package com.weikou.beibeivideo.ui.main;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.TextView;
import com.weikou.beibeivideo.R;
import com.weikou.beibeivideo.ui.BaseActivity;
import com.weikou.beibeivideo.util.ui.TopStatusSettings;
public class CategoryActivity extends BaseActivity implements
        OnClickListener {
    private TextView tv_top_bar_left;
    private TextView tv_top_bar_middle;
    @Override
    public void onResume() {
        super.onResume();
    }
    @Override
    public void onPause() {
        super.onPause();
    }
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_category);
        TopStatusSettings.setStatusViewAndDeepColor(this);
        tv_top_bar_left = findViewById(R.id.tv_top_bar_left);
        tv_top_bar_middle = findViewById(R.id.tv_top_bar_middle);
        tv_top_bar_middle.setText("分类");
        tv_top_bar_left.setOnClickListener(this);
        getSupportFragmentManager().beginTransaction().replace(R.id.fl_container, new CategoryFragment()).commitAllowingStateLoss();
    }
    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.tv_top_bar_left: {
                finish();
            }
            break;
            default:
                break;
        }
    }
    @Override
    protected void onDestroy() {
        super.onDestroy();
    }
}
BuWanVideo/src/com/weikou/beibeivideo/ui/main/GoldCornFragment.java
@@ -1,45 +1,24 @@
package com.weikou.beibeivideo.ui.main;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.ListView;
import android.widget.ProgressBar;
import android.widget.Toast;
import com.google.gson.FieldNamingPolicy;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.reflect.TypeToken;
import com.lcjian.library.util.SingleToast;
import com.qq.e.ads.cfg.VideoOption;
import com.qq.e.ads.nativ.ADSize;
import com.qq.e.ads.nativ.NativeExpressAD;
import com.qq.e.ads.nativ.NativeExpressADView;
import com.qq.e.comm.util.AdError;
import com.umeng.analytics.MobclickAgent;
import com.weikou.beibeivideo.BasicTextHttpResponseHandler;
import com.weikou.beibeivideo.BeibeiVideoAPI;
import com.weikou.beibeivideo.BeibeiVideoApplication;
import com.weikou.beibeivideo.R;
import com.weikou.beibeivideo.entity.JumpDetail;
import com.weikou.beibeivideo.entity.VideoInfo;
import com.weikou.beibeivideo.entity.vo.CouponVideoInfo;
import com.weikou.beibeivideo.entity.vo.GoldCornTask;
import com.weikou.beibeivideo.entity.vo.SignInGoldCornDateData;
import com.weikou.beibeivideo.entity.vo.SignInInfo;
import com.weikou.beibeivideo.ui.MyRetainViewFragment;
import com.weikou.beibeivideo.ui.category.bean.UniqueBean;
import com.weikou.beibeivideo.ui.goldcorn.GoldCornAdapter;
import com.weikou.beibeivideo.ui.login.LoginActivity;
import com.weikou.beibeivideo.ui.recommend.DiscoverAdapter;
import com.weikou.beibeivideo.util.BeibeiConstant;
import com.weikou.beibeivideo.util.JumpActivityUtil;
import com.weikou.beibeivideo.util.UserUtil;
import com.weikou.beibeivideo.util.ad.AdUtil;
import com.weikou.beibeivideo.util.ad.GDTConstant;
import com.weikou.beibeivideo.util.ui.ToastUtil;
import com.weikou.beibeivideo.widget.MySwipeRefreshLayout;
@@ -48,7 +27,6 @@
import org.json.JSONObject;
import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.List;
import androidx.annotation.NonNull;
@@ -97,6 +75,12 @@
            refreshSignInfo = false;
            getSignInInfo();
        }
        //清除登录状态
        if (signInInfo != null && mGoldCornAdapter != null) {
            mGoldCornAdapter.notifyItemChanged(0);
        }
    }
@@ -301,12 +285,19 @@
    @Override
    public void onSignIn() {
        if (!UserUtil.isLogin(BeibeiVideoApplication.application)) {
            startActivity(new Intent(BeibeiVideoApplication.application, LoginActivity.class));
            startActivityForResult(new Intent(BeibeiVideoApplication.application, LoginActivity.class).putExtra("result", true), 20001);
            return;
        }
        signIn();
    }
    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == 20001) {
            getSignInInfo();
        }
    }
    public static class GoldCornExpireInfo {
        public String goldcorn;
BuWanVideo/src/com/weikou/beibeivideo/ui/main/MainActivity.java
@@ -94,13 +94,10 @@
        LoaderManager.LoaderCallbacks<Cursor>, View.OnClickListener {
    private static final String TGA = "MainActivity";
    private ImageView iv_taobao;
    private ImageView iv_red_dot;
    private ProgressDialog pd = null;
    private FrameLayout fl_right_ad;
    private FrameLayout fl_category;
    SharedPreferences preferences;// 广告商城,获取图标状态信息
@@ -139,6 +136,8 @@
        tv_search = findViewById(R.id.tv_activity_main_search);
        fl_category = findViewById(R.id.fl_category);
        iv_msg_dot = findViewById(R.id.iv_msg_dot);
@@ -154,11 +153,8 @@
        findViewById(R.id.ll_activity_main_search).setOnClickListener(this);
        findViewById(R.id.iv_recommend_watch_history).setOnClickListener(this);
        findViewById(R.id.ll_activity_login).setOnClickListener(this);
        // 淘宝联盟
        iv_taobao = findViewById(R.id.nat);
        iv_taobao.setOnClickListener(this);
        iv_red_dot = findViewById(R.id.iv_red_dot);
        fl_right_ad = findViewById(R.id.fl_right_ad);
        findViewById(R.id.fl_category).setOnClickListener(this);
        TopStatusSettings.setStatusViewAndDeepColor(this);
        initialer.run();
@@ -208,7 +204,6 @@
                        .setChecked(true);
            }
        });
        setRightTopAD();
        preLoadCommonAD();
@@ -240,31 +235,6 @@
    }
    private void setRightTopAD() {
        if (preferences == null)
            preferences = getSharedPreferences("user",
                    Context.MODE_PRIVATE);
        String topIcon = preferences.getString("top_icon", "");
        if (!StringUtils.isBlank(topIcon)) {
            fl_right_ad.setVisibility(View.VISIBLE);
            try {
                Glide.with(getApplicationContext()).load(topIcon).into(iv_taobao);
                long time = preferences.getLong("latestAdtime", 0);
                if (!getDay(time).equalsIgnoreCase(
                        getDay(System.currentTimeMillis()))) {
                    iv_red_dot.setVisibility(View.VISIBLE);
                } else {
                    iv_red_dot.setVisibility(View.GONE);
                }
            } catch (IllegalArgumentException e) {
                e.printStackTrace();
            }
        } else {
            fl_right_ad.setVisibility(View.GONE);
        }
    }
    //-------------------------视频广告-----------------------------
    @Nullable
@@ -276,28 +246,6 @@
    }
    //-------------------------视频广告结束-----------------------------
    private SimpleTarget<Drawable> target = new SimpleTarget<Drawable>() {
        @Override
        public void onResourceReady(@NonNull Drawable resource, @Nullable Transition<? super Drawable> transition) {
            iv_taobao.setImageDrawable(resource);
            long time = preferences.getLong("latestAdtime", 0);
            if (!getDay(time).equalsIgnoreCase(
                    getDay(System.currentTimeMillis()))) {
                iv_red_dot.setVisibility(View.VISIBLE);
            } else {
                iv_red_dot.setVisibility(View.GONE);
            }
        }
        @Override
        public void onLoadCleared(@Nullable Drawable placeholder) {
        }
    };
    private String getDay(long time) {
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
@@ -332,7 +280,6 @@
    @Override
    public void onResume() {
        super.onResume();
        setRightTopAD();
        isLogin = StringUtils.isEmpty(preferences.getString("LoginUid", "")) ? false
                : true;
@@ -512,6 +459,10 @@
                openMsg();
                break;
            case R.id.fl_category:
                startActivity(new Intent(this, CategoryActivity.class));
                break;
        }
    }
BuWanVideo/src/com/weikou/beibeivideo/ui/main/MineFragment.java
@@ -282,8 +282,8 @@
                break;
            case R.id.rl_mine_about_us:
                Intent intent1 = new Intent(getContext(), BrowserActivity.class);
//                intent1.putExtra("url", BeibeiConstant.ABOUT_US);
                intent1.putExtra("url", "http://192.168.3.122/buyVideo/index.html?infoId=23099");
                intent1.putExtra("url", BeibeiConstant.ABOUT_US);
//                intent1.putExtra("url", "http://192.168.3.122/buyVideo/index.html?infoId=23099");
                startActivity(intent1);
                break;
            case R.id.rl_mine_settings:
BuWanVideo/src/com/weikou/beibeivideo/ui/media/VideoDetailActivity.java
@@ -294,7 +294,7 @@
                }
                @Override
                public void noAdRewardClick() {
                public void onOtherClick(String name) {
                }
BuWanVideo/src/com/weikou/beibeivideo/ui/media/VideoDetailActivity2.java
@@ -351,7 +351,7 @@
                        }
                        @Override
                        public void noAdRewardClick() {
                        public void onOtherClick(String name) {
                        }
@@ -810,7 +810,7 @@
                            }
                            //挣影视豆
                            makeGoldCornRunnable = GoldCornUtil.makeGoldCorn(getIntent(), fl_video_play_background, videoId, resourceId, null, null);
                            makeGoldCornRunnable = GoldCornUtil.makeGoldCorn(getIntent(), fl_video_play_background, videoId, resourceId, 20, null);
                            JSONObject data = jsonObject.optJSONObject("Data");
                            boolean pptv = data.optBoolean("pptv", false);
BuWanVideo/src/com/weikou/beibeivideo/ui/mine/PPTVPlayFragment.java
@@ -298,6 +298,8 @@
    }
    private String videoId;
    //是否为VIP视频
    private boolean isVIPVideo;
    @Override
    public void onCreateView(View contentView, Bundle savedInstanceState) {
@@ -311,6 +313,7 @@
            tv_title.setText(title);
            videoId = bundle.getString("videoId");
            isVIPVideo = bundle.getBoolean("vip", false);
            webview.loadUrl(url);
            View view = LayoutInflater.from(getContext()).inflate(R.layout.item_jump_video_loading, null);
            Toast toast = ToastUtil.showMiddleToast(getContext(), view, Toast.LENGTH_SHORT);
@@ -730,7 +733,11 @@
        fl_ad.setVisibility(View.VISIBLE);
        PlayVideoPreADSetting setting = new PlayVideoPreADSetting(AdUtil.AD_TYPE.gdt, BeibeiConstant.GDT_ID, GDTConstant.PID_2_VIDEO_DETAIL_PLAYER_PRE_PPTV, null);
        setting.setNeedShowRewardNotify(AdUtil.showPPTVNoAdReward(BeibeiVideoApplication.application));
        if (isVIPVideo) {
            setting.setOtherAction("0元看本片");
        } else {
            setting.setOtherAction("获取免广告权益");
        }
        mVideoDetailVideoAdFragment = PlayVideoPreADFragment.newInstance();
        Bundle bundle = new Bundle();
@@ -755,89 +762,12 @@
                    }
                    @Override
                    public void noAdRewardClick() {
                        int width = DimenUtils.getScreenWidth(getContext());
                        int height = DimenUtils.getScreenHeight(getContext());
                        DialogUtil.show(loadingDialog);
                        //激励视频
                        RewardVideoAdManager.IAdShowListener showListener = new RewardVideoAdManager.IAdShowListener() {
                            private boolean reward = false;
                            @Override
                            public void onShow() {
                                reward = false;
                            }
                            @Override
                            public void onReward() {
                                reward = true;
                                //免广告3小时
                                AdUtil.setPPTVNoAdRewardSuccess(BeibeiVideoApplication.application);
                            }
                            @Override
                            public void onError(String msg) {
                            }
                            @Override
                            public void onClose() {
                                if (reward) {
                                    showRewardSuccessToast(true);
                                    if (mVideoDetailVideoAdFragment != null)
                                        mVideoDetailVideoAdFragment.finishPlay();
                                } else {
                                    showRewardSuccessToast(false);
                                }
                            }
                        };
                        Context context = BeibeiVideoApplication.application;
                        AdUtil.AD_TYPE pptvNoAdReward = AdUtil.getAdType(context, AdPositionEnum.pptvNoAdReward);
                        String pid = AdUtil.getAdPid(context, AdPositionEnum.pptvNoAdReward);
                        if (pptvNoAdReward == null) {
                            Toast.makeText(context, "暂不可用", Toast.LENGTH_SHORT).show();
                            return;
                    public void onOtherClick(String name) {
                        if (name != null && name.contains("广告")) {
                            loadRewardAd();
                        } else {
                            getActivityInfo(tv_url.getText() + "");
                        }
                        if (StringUtils.isBlank(pid)) {
                            if (pptvNoAdReward != null) {
                                if (pptvNoAdReward == AdUtil.AD_TYPE.csj) {
                                    pid = CSJConstant.VIDEO_REWARD_PPTV;
                                } else if (pptvNoAdReward == AdUtil.AD_TYPE.gdt2) {
                                    pid = GDTConstant.PID_2_VIDEO_DETAIL_PLAYER_REWARD_PPTV;
                                }
                            }
                        }
                        new RewardVideoAdManager(pptvNoAdReward, BeibeiVideoApplication.application).loadAd(width, height, pid, false, new RewardVideoAdManager.IAdLoadListener() {
                            @Override
                            public void onSuccess(RewardVideoAdContainer ad) {
                                fl_ad.post(new Runnable() {
                                    @Override
                                    public void run() {
                                        UmengEventUtil.pptvNoAdRewardClick(getContext(), pptvNoAdReward.name());
                                        DialogUtil.dismiss(loadingDialog);
                                        RewardVideoAdManager.showAd(getActivity(), ad, showListener);
                                    }
                                });
                            }
                            @Override
                            public void onError(String msg) {
                                UmengEventUtil.pptvNoAdRewardClick(getContext(), "fail");
                                DialogUtil.dismiss(loadingDialog);
                                Toast.makeText(context, "广告拉取失败,请稍后再试", Toast.LENGTH_SHORT).show();
                            }
                        }, showListener);
                    }
                    @Override
@@ -854,6 +784,91 @@
        getChildFragmentManager().beginTransaction().replace(R.id.fl_ad, mVideoDetailVideoAdFragment).commitAllowingStateLoss();
    }
    private void loadRewardAd() {
        int width = DimenUtils.getScreenWidth(getContext());
        int height = DimenUtils.getScreenHeight(getContext());
        DialogUtil.show(loadingDialog);
        //激励视频
        RewardVideoAdManager.IAdShowListener showListener = new RewardVideoAdManager.IAdShowListener() {
            private boolean reward = false;
            @Override
            public void onShow() {
                reward = false;
            }
            @Override
            public void onReward() {
                reward = true;
                //免广告3小时
                AdUtil.setPPTVNoAdRewardSuccess(BeibeiVideoApplication.application);
            }
            @Override
            public void onError(String msg) {
            }
            @Override
            public void onClose() {
                if (reward) {
                    showRewardSuccessToast(true);
                    if (mVideoDetailVideoAdFragment != null)
                        mVideoDetailVideoAdFragment.finishPlay();
                } else {
                    showRewardSuccessToast(false);
                }
            }
        };
        Context context = BeibeiVideoApplication.application;
        AdUtil.AD_TYPE pptvNoAdReward = AdUtil.getAdType(context, AdPositionEnum.pptvNoAdReward);
        String pid = AdUtil.getAdPid(context, AdPositionEnum.pptvNoAdReward);
        if (pptvNoAdReward == null) {
            Toast.makeText(context, "暂不可用", Toast.LENGTH_SHORT).show();
            return;
        }
        if (StringUtils.isBlank(pid)) {
            if (pptvNoAdReward != null) {
                if (pptvNoAdReward == AdUtil.AD_TYPE.csj) {
                    pid = CSJConstant.VIDEO_REWARD_PPTV;
                } else if (pptvNoAdReward == AdUtil.AD_TYPE.gdt2) {
                    pid = GDTConstant.PID_2_VIDEO_DETAIL_PLAYER_REWARD_PPTV;
                }
            }
        }
        new RewardVideoAdManager(pptvNoAdReward, BeibeiVideoApplication.application).loadAd(width, height, pid, false, new RewardVideoAdManager.IAdLoadListener() {
            @Override
            public void onSuccess(RewardVideoAdContainer ad) {
                fl_ad.post(new Runnable() {
                    @Override
                    public void run() {
                        UmengEventUtil.pptvNoAdRewardClick(getContext(), pptvNoAdReward.name());
                        DialogUtil.dismiss(loadingDialog);
                        RewardVideoAdManager.showAd(getActivity(), ad, showListener);
                    }
                });
            }
            @Override
            public void onError(String msg) {
                UmengEventUtil.pptvNoAdRewardClick(getContext(), "fail");
                DialogUtil.dismiss(loadingDialog);
                Toast.makeText(context, "广告拉取失败,请稍后再试", Toast.LENGTH_SHORT).show();
            }
        }, showListener);
    }
    private void adPlayFinish() {
        if (webview != null)
BuWanVideo/src/com/weikou/beibeivideo/ui/recommend/SearchActivity.java
@@ -95,8 +95,7 @@
    private boolean touchSearchInput = false;
    //赚影视豆
    private Runnable makeGoldCornRunnable;
    private void initView() {
        fl_advertisement = findViewById(R.id.fl_advertisement);
@@ -481,8 +480,7 @@
                                }
                            });
                        }
                        //挣影视豆
                        makeGoldCornRunnable = GoldCornUtil.makeGoldCorn(getIntent(), et_search_key, null, null, 2, null);
                    }
                });
            }
@@ -529,6 +527,10 @@
        Intent intent = new Intent(SearchActivity.this,
                SearchResultActivity.class);
        intent.putExtra("key", key);
        if (getIntent() != null) {
            intent.putExtra("goldcorn", getIntent().getStringExtra("goldcorn"));
            getIntent().removeExtra("goldcorn");
        }
        startActivity(intent);
    }
@@ -616,6 +618,6 @@
    @Override
    protected void onDestroy() {
        super.onDestroy();
        GoldCornUtil.removeCallbacks(et_search_key, makeGoldCornRunnable);
    }
}
BuWanVideo/src/com/weikou/beibeivideo/ui/recommend/SearchResultActivity.java
@@ -5,9 +5,11 @@
import android.graphics.Typeface;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
@@ -49,6 +51,7 @@
import com.weikou.beibeivideo.util.UmengEventUtil;
import com.weikou.beibeivideo.util.ad.ExpressAdManager;
import com.weikou.beibeivideo.util.ad.GDTConstant;
import com.weikou.beibeivideo.util.goldcorn.GoldCornUtil;
import com.weikou.beibeivideo.util.ui.DividerItemDecoration;
import com.weikou.beibeivideo.util.ui.TopStatusSettings;
@@ -97,6 +100,9 @@
    private SearchSuggestFragment suggestFragment;
    private FrameLayout fl_suggest;
    //赚影视豆
    private Runnable makeGoldCornRunnable;
    @Override
@@ -462,6 +468,10 @@
    private void search(String key, String videoType) {
        UmengEventUtil.search(getApplicationContext(), videoType);
        SharedPreferences preferences = getSharedPreferences("user",
@@ -481,6 +491,11 @@
                    public void onSuccessPerfect(int statusCode,
                                                 Header[] headers, JSONObject jsonObject)
                            throws Exception {
                        //挣影视豆
                        if (makeGoldCornRunnable == null)
                            makeGoldCornRunnable = GoldCornUtil.makeGoldCorn(getIntent(), et_search_key, null, null, 2, null);
                        if (jsonObject.getBoolean("IsPost")) {
                            Gson gson = new GsonBuilder().setFieldNamingPolicy(
                                    FieldNamingPolicy.UPPER_CAMEL_CASE)
@@ -627,4 +642,10 @@
            }
        }
    }
    @Override
    protected void onDestroy() {
        super.onDestroy();
        GoldCornUtil.removeCallbacks(et_search_key, makeGoldCornRunnable);
    }
}
BuWanVideo/src/com/weikou/beibeivideo/util/JumpActivityUtil.java
@@ -27,7 +27,9 @@
import com.tencent.mm.opensdk.openapi.WXAPIFactory;
import com.weikou.beibeivideo.BeibeiVideoApplication;
import com.weikou.beibeivideo.entity.JumpDetail;
import com.weikou.beibeivideo.entity.VideoType;
import com.weikou.beibeivideo.entity.ad.RewardVideoAdContainer;
import com.weikou.beibeivideo.ui.category.MVideosActivity;
import com.weikou.beibeivideo.ui.dialog.LoadingDialogUtil;
import com.weikou.beibeivideo.ui.login.LoginActivity;
import com.weikou.beibeivideo.ui.mine.BrowserActivity;
@@ -199,8 +201,8 @@
            {
                String webUrl = params.getString("url").toString();
                String title = params.getString("title");
                String close=params.getString("close");
                context.startActivity(new Intent(context, BrowserActivity.class).putExtra("url", webUrl).putExtra("title", title).putExtra("close",close));
                String close = params.getString("close");
                context.startActivity(new Intent(context, BrowserActivity.class).putExtra("url", webUrl).putExtra("title", title).putExtra("close", close));
            }
@@ -263,11 +265,20 @@
            default: {
                try {
                    Intent intent = new Intent(context, Class.forName(JumpActivityUtil.filterActivityName(detail.getActivity())));
                    if (params != null)
                        for (Iterator<String> keys = params.keySet().iterator(); keys.hasNext(); ) {
                            String key = keys.next();
                            intent.putExtra(key, params.getString(key));
                    if (params != null) {
                        //特殊处理
                        if (MVideosActivity.class.getName().equalsIgnoreCase(JumpActivityUtil.filterActivityName(detail.getActivity())) && !StringUtils.isEmpty(params.getString("Id"))) {
                            VideoType videoType = new VideoType();
                            videoType.setId(params.getString("Id"));
                            videoType.setName(params.getString("Name"));
                            intent.putExtra("video_type", videoType);
                        } else {
                            for (Iterator<String> keys = params.keySet().iterator(); keys.hasNext(); ) {
                                String key = keys.next();
                                intent.putExtra(key, params.getString(key));
                            }
                        }
                    }
                    context.startActivity(intent);
                } catch (Exception e) {
                    e.printStackTrace();
library-common/res/drawable/color_progressbar.xml
@@ -19,8 +19,8 @@
        <clip>
        <shape>   
            <corners android:radius="3dip" />   
            <gradient android:startColor="#FFf7db00"
                android:endColor="#FFf7db00"   />
            <gradient android:startColor="#159FFF"
                android:endColor="#159FFF"   />
        </shape> 
        </clip>
    </item>
library-gallery/src/main/AndroidManifest.xml
@@ -1,4 +1,4 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.guangdiantongsdk"
    package="com.lzj.gallery.library"
    android:versionCode="1"
    android:versionName="1.0"></manifest>