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>