Commit 77383a63 authored by jyx's avatar jyx

添加横版短视频

parent 61ea2bb2
......@@ -7,6 +7,7 @@ import android.content.Intent
import cn.jpush.android.api.BasicPushNotificationBuilder
import cn.jpush.android.api.JPushInterface
import com.mints.goodmoney.manager.BxmManager.initBxm
import com.mints.goodmoney.manager.LiebaoManager
import com.mints.goodmoney.manager.ShumeiManager
import com.mints.goodmoney.manager.ZhangyueManager
import com.mints.library.utils.CommonUtils
......@@ -84,6 +85,9 @@ class InitAppService : IntentService("InitializeService") {
// 变现猫
initBxm(this.application)
// 猎豹游戏初始化
LiebaoManager.getInstance().initCmGameSdk()
}
/**
......
......@@ -13,7 +13,6 @@ import androidx.multidex.MultiDexApplication;
import com.bun.miitmdid.core.JLibrary;
import com.component.dly.xzzq_ywsdk.YwSDK;
import com.mints.goodmoney.common.Constant;
import com.mints.goodmoney.manager.LiebaoManager;
import com.mints.goodmoney.manager.MiitHelper;
import com.mints.goodmoney.manager.TtCsjAdManager;
import com.mints.goodmoney.manager.UserManager;
......@@ -112,8 +111,8 @@ public class MintsApplication extends MultiDexApplication {
// 一览视频
initYL();
// 猎豹游戏初始化
LiebaoManager.getInstance().initCmGameSdk();
// // 猎豹游戏初始化
// LiebaoManager.getInstance().initCmGameSdk();
}
private MiitHelper.AppIdsUpdater appIdsUpdater = ids -> OAID = ids;
......@@ -160,6 +159,7 @@ public class MintsApplication extends MultiDexApplication {
YLUIConfig.getInstance() //抖音样式小视频配置
.littleLikeShow(true) //是否显示点赞
.littleShareShow(false) //是否显示分享
.littleShowGuide(true)//是否显示新手引导滑动浮层(第一次安装进入显示)
.littleComment(CommentConfig.CommentType.DISMISS_COMMENT) //评论,参数详见文档;
//feed流短视频样式配置
.videoComment(CommentConfig.CommentType.DISMISS_COMMENT) //评论,参数详见文档;
......@@ -167,8 +167,9 @@ public class MintsApplication extends MultiDexApplication {
.videoShareShow(false) //是否显示分享
.followAvailable(false) //关注功能是否可用
.feedAvatarClickable(true) //头像是否支持点击跳转到作者页面
.feedPlayAuto(true) //feed自动播放
.feedSwipeRefreshEnable(true); //feed是否可以下拉刷新
FeedConfig.getInstance().setPlayerStyle(FeedConfig.STYLE_NATIVE); //FeedConfig.STYLE_STYLE_FEED_PLAY当前页面播放
FeedConfig.getInstance().setPlayerStyle(FeedConfig.STYLE_FEED_PLAY); //FeedConfig.STYLE_FEED_PLAY当前页面播放
}
/**
......
......@@ -59,12 +59,13 @@ object Constant {
var ICASH_PATH = Environment.getExternalStorageDirectory().path + "/money/" + "apk/"
/**
* app应用首页 0-主页 1-pan 2-friends 3-我
* app应用首页 0-主页 1-横屏视频 2-pan 3-friends 4-我
*/
const val FRAGMENT_CLICK_MAIN = 0
const val FRAGMENT_CLICK_PAN = 1
const val FRAGMENT_CLICK_FRIENDS = 2
const val FRAGMENT_CLICK_MY = 3
const val FRAGMENT_CLICK_CHANNEL = 2
const val FRAGMENT_CLICK_FRIENDS = 3
const val FRAGMENT_CLICK_MY = 4
// 协议地址
var REGISTER_URL = BuildConfig.MainIp + "gm/register.html"//服务协议
......
package com.mints.goodmoney.mvp.model;
import java.io.Serializable;
import java.util.List;
public class MyInfo implements Serializable {
/**
* taskVeido : {"max":20,"carrierType":"CHALLENGE_VEDIO","complete":0}
* taskShareFriend : {"max":20,"carrierType":"CHALLENGE_SHAREFRIEND","complete":0}
* userMsg : {"head":"","realName":null,"surplus":0,"idcode":"20000003","nickName":"","coin":50}
* autoList : [{"baseConfig":{"buttonText":"去赚钱","coinText":"+2000金币","context":"分分钟赚金币,翻倍还能赚更多","hotType":0,"title":"看首页视频","taskId":"TO_HOME"}},{"otherConfig":{"doubleCoin":50,"max":20,"carrierType":"CHALLENGE_SHAREFRIEND","doubleCarrierType":"CHALLENGE_SHAREFRIEND_DOUBLE","complete":0,"status":0,"coin":50},"baseConfig":{"buttonText":"去邀请","coinText":"+2000金币","runingText":"0/20","context":"每日邀请好友得海量金币","hotType":0,"title":"邀好友,赚金币","taskId":"APP_SHAREFRIEND"}},{"otherConfig":{"max":10,"carrierType":"CHALLENGE_VEDIO","complete":0,"coin":170},"baseConfig":{"buttonText":"赚金币","coinText":"+1700金币","runingText":"0/10","context":"看福利视频得金币,每天中午刷新任务","hotType":0,"title":"看福利视频赚金币","taskId":"APP_VEDIO"}},{"baseConfig":{"buttonText":"赚金币","coinText":"+99999金币","context":"玩趣闻游戏,得海量金币","hotType":0,"title":"玩游戏,赚金币","taskId":"TO_YWHZ"}},{"otherConfig":{"carrierType":"GAME_ONLINE","status":0},"baseConfig":{"buttonText":"赚金币","coinText":"+100金币","runingText":"0/3分钟","context":"试玩游戏,拿惊喜奖励","hotType":0,"title":"试玩平台","taskId":"TO_LIEBAO"}}]
* userMsg : {"surplus":0,"idcode":"20000001","mobile":"18610711553","coin":5476}
*/
private TaskVeidoBean taskVeido;
private TaskGameBean taskGame;
private TaskShareFriendBean taskShareFriend;
private UserMsgBean userMsg;
public TaskVeidoBean getTaskVeido() {
return taskVeido;
}
public TaskGameBean getTaskGame() {
return taskGame;
}
public void setTaskVeido(TaskVeidoBean taskVeido) {
this.taskVeido = taskVeido;
}
public TaskShareFriendBean getTaskShareFriend() {
return taskShareFriend;
}
public void setTaskShareFriend(TaskShareFriendBean taskShareFriend) {
this.taskShareFriend = taskShareFriend;
}
private List<AutoListBean> autoList;
public UserMsgBean getUserMsg() {
return userMsg;
......@@ -43,186 +21,234 @@ public class MyInfo implements Serializable {
this.userMsg = userMsg;
}
public class TaskVeidoBean implements Serializable{
public List<AutoListBean> getAutoList() {
return autoList;
}
public void setAutoList(List<AutoListBean> autoList) {
this.autoList = autoList;
}
public static class UserMsgBean implements Serializable {
/**
* max : 20
* carrierType : CHALLENGE_VEDIO
* complete : 0
* surplus : 0
* idcode : 20000001
* mobile : 18610711553
* coin : 5476
*/
private int surplus;
private String idcode;
private String mobile;
private int coin;
private int max;
private String carrierType;
private int complete;
public int getCoin() {
return coin;
}
public void setCoin(int coin) {
this.coin = coin;
}
public int getMax() {
return max;
}
public void setMax(int max) {
this.max = max;
}
public String getCarrierType() {
return carrierType;
public int getSurplus() {
return surplus;
}
public void setCarrierType(String carrierType) {
this.carrierType = carrierType;
public void setSurplus(int surplus) {
this.surplus = surplus;
}
public int getComplete() {
return complete;
public String getIdcode() {
return idcode;
}
public void setComplete(int complete) {
this.complete = complete;
public void setIdcode(String idcode) {
this.idcode = idcode;
}
}
public class TaskGameBean implements Serializable{
private int status;
private String carrierType;
private int coin;
public int getStatus() {
return status;
public String getMobile() {
return mobile;
}
public String getCarrierType() {
return carrierType;
public void setMobile(String mobile) {
this.mobile = mobile;
}
public int getCoin() {
return coin;
}
}
public class TaskShareFriendBean implements Serializable{
/**
* max : 20
* carrierType : CHALLENGE_SHAREFRIEND
* complete : 0
*/
private int coin;
private int max;
private String carrierType;
private int complete;
private int status;
public int getCoin() {
return coin;
}
public void setCoin(int coin) {
this.coin = coin;
}
}
public int getStatus() {
return status;
}
public static class AutoListBean implements Serializable {
/**
* baseConfig : {"buttonText":"去赚钱","coinText":"+2000金币","context":"分分钟赚金币,翻倍还能赚更多","hotType":0,"title":"看首页视频","taskId":"TO_HOME"}
* otherConfig : {"doubleCoin":50,"max":20,"carrierType":"CHALLENGE_SHAREFRIEND","doubleCarrierType":"CHALLENGE_SHAREFRIEND_DOUBLE","complete":0,"status":0,"coin":50}
*/
public void setStatus(int status) {
this.status = status;
}
private BaseConfigBean baseConfig;
private OtherConfigBean otherConfig = null;
public int getMax() {
return max;
public BaseConfigBean getBaseConfig() {
return baseConfig;
}
public void setMax(int max) {
this.max = max;
public void setBaseConfig(BaseConfigBean baseConfig) {
this.baseConfig = baseConfig;
}
public String getCarrierType() {
return carrierType;
public OtherConfigBean getOtherConfig() {
return otherConfig;
}
public void setCarrierType(String carrierType) {
this.carrierType = carrierType;
public void setOtherConfig(OtherConfigBean otherConfig) {
this.otherConfig = otherConfig;
}
public int getComplete() {
return complete;
}
public static class BaseConfigBean implements Serializable {
/**
* buttonText : 去赚钱
* coinText : +2000金币
* context : 分分钟赚金币,翻倍还能赚更多
* hotType : 0
* title : 看首页视频
* taskId : TO_HOME
*/
public void setComplete(int complete) {
this.complete = complete;
}
}
private String buttonText;
private String coinText;
private String context;
private int hotType;
private String title;
private String taskId;
private String runingText = null;
public class UserMsgBean implements Serializable{
/**
* head :
* realName : null
* surplus : 0
* idcode : 20000003
* nickName :
* coin : 50
*/
public String getRuningText() {
return runingText;
}
private String head;
private Object realName;
private int surplus;
private String idcode;
private String nickName;
private int coin;
public void setRuningText(String runingText) {
this.runingText = runingText;
}
public String getHead() {
return head;
}
public String getButtonText() {
return buttonText;
}
public void setHead(String head) {
this.head = head;
}
public void setButtonText(String buttonText) {
this.buttonText = buttonText;
}
public Object getRealName() {
return realName;
}
public String getCoinText() {
return coinText;
}
public void setRealName(Object realName) {
this.realName = realName;
}
public void setCoinText(String coinText) {
this.coinText = coinText;
}
public int getSurplus() {
return surplus;
}
public String getContext() {
return context;
}
public void setSurplus(int surplus) {
this.surplus = surplus;
}
public void setContext(String context) {
this.context = context;
}
public String getIdcode() {
return idcode;
}
public int getHotType() {
return hotType;
}
public void setIdcode(String idcode) {
this.idcode = idcode;
}
public void setHotType(int hotType) {
this.hotType = hotType;
}
public String getNickName() {
return nickName;
}
public String getTitle() {
return title;
}
public void setNickName(String nickName) {
this.nickName = nickName;
}
public void setTitle(String title) {
this.title = title;
}
public int getCoin() {
return coin;
public String getTaskId() {
return taskId;
}
public void setTaskId(String taskId) {
this.taskId = taskId;
}
}
public void setCoin(int coin) {
this.coin = coin;
public static class OtherConfigBean implements Serializable {
/**
* doubleCoin : 50
* max : 20
* carrierType : CHALLENGE_SHAREFRIEND
* doubleCarrierType : CHALLENGE_SHAREFRIEND_DOUBLE
* complete : 0
* status : 0
* coin : 50
*/
private int doubleCoin;
private int max;
private String carrierType;
private String doubleCarrierType;
private int complete;
private int status = 0;
private int coin;
public int getDoubleCoin() {
return doubleCoin;
}
public void setDoubleCoin(int doubleCoin) {
this.doubleCoin = doubleCoin;
}
public int getMax() {
return max;
}
public void setMax(int max) {
this.max = max;
}
public String getCarrierType() {
return carrierType;
}
public void setCarrierType(String carrierType) {
this.carrierType = carrierType;
}
public String getDoubleCarrierType() {
return doubleCarrierType;
}
public void setDoubleCarrierType(String doubleCarrierType) {
this.doubleCarrierType = doubleCarrierType;
}
public int getComplete() {
return complete;
}
public void setComplete(int complete) {
this.complete = complete;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public int getCoin() {
return coin;
}
public void setCoin(int coin) {
this.coin = coin;
}
}
}
}
......@@ -74,7 +74,6 @@ class HomePresenter : BasePresenter<HomeView>() {
if (isLinkView) return
view.hideLoading()
view.showToast(e.message)
view.getHallBaseMsgFail()
}
override fun onNext(baseResponse: BaseResponse<UserTaskMsgBean>) {
......@@ -83,8 +82,7 @@ class HomePresenter : BasePresenter<HomeView>() {
val message = baseResponse.getMessage()
when (code) {
200 -> view.getHallBaseMsgSuc(baseResponse.getData())
else ->{
view.getHallBaseMsgFail()
else -> {
view.showToast(message)
}
}
......
package com.mints.goodmoney.mvp.presenters
import com.mints.goodmoney.manager.AppHttpManager
import com.mints.goodmoney.mvp.model.BaseResponse
import com.mints.goodmoney.mvp.model.MainVedioMsgBean
import com.mints.goodmoney.mvp.views.HorizChannelView
import com.mints.library.net.neterror.BaseSubscriber
import com.mints.library.net.neterror.Throwable
class HorizChannelPresenter : BasePresenter<HorizChannelView>() {
fun getSmallHomeVedioBaseMsg() {
AppHttpManager.getInstance(loanApplication)
.call(loanService.smallHomeVedioBaseMsg,
object : BaseSubscriber<BaseResponse<MainVedioMsgBean>>() {
override fun onCompleted() {
if (isLinkView) return
}
override fun onError(e: Throwable) {
if (isLinkView) return
}
override fun onNext(baseResponse: BaseResponse<MainVedioMsgBean>) {
if (isLinkView) return
val code = baseResponse.getStatus()
val message = baseResponse.getMessage()
when (code) {
200 -> view.getHomeVedioMsgSuc(baseResponse.data)
else -> view.showToast(message)
}
}
})
}
}
\ No newline at end of file
......@@ -11,7 +11,6 @@ import com.mints.goodmoney.mvp.views.MyView
import com.mints.goodmoney.utils.DeviceUuidFactory
import com.mints.library.net.neterror.BaseSubscriber
import com.mints.library.net.neterror.Throwable
import net.grandcentrix.tray.AppPreferences
import java.util.*
class MyPresenter : BasePresenter<MyView>() {
......@@ -20,7 +19,6 @@ class MyPresenter : BasePresenter<MyView>() {
* 获取签到内容
*/
open fun getSignInHomePageMsg() {
// view.showLoading("加载中...");
AppHttpManager.getInstance(loanApplication)
.call(loanService.signInHomePageMsg,
......@@ -76,14 +74,17 @@ class MyPresenter : BasePresenter<MyView>() {
val message = baseResponse.message
when (code) {
200 -> view.signInHomePageSuc()
else -> {
view.showToast(message)
}
}
}
})
}
fun getUserHallBaseMsg() {
fun getAutoUserHallBaseMsg() {
AppHttpManager.getInstance(loanApplication)
.call(loanService.userHallBaseMsg, object : BaseSubscriber<BaseResponse<MyInfo>>() {
.call(loanService.autoUserHallBaseMsg, object : BaseSubscriber<BaseResponse<MyInfo>>() {
override fun onCompleted() {
if (isLinkView)
......@@ -121,6 +122,46 @@ class MyPresenter : BasePresenter<MyView>() {
})
}
// fun getUserHallBaseMsg() {
// AppHttpManager.getInstance(loanApplication)
// .call(loanService.userHallBaseMsg, object : BaseSubscriber<BaseResponse<MyInfo>>() {
//
// override fun onCompleted() {
// if (isLinkView)
// return
//
// view.hideLoading()
// }
//
// override fun onNext(baseResponse: BaseResponse<MyInfo>) {
// if (isLinkView) return
//
// val code: Int = baseResponse.status
// val message: String = baseResponse.message
// when (code) {
// 200 -> {
// view.getUserTaskMsgSuc(baseResponse.data)
// }
// 401 -> view.getUserTaskMsgFail()
// else -> {
// view.getUserTaskMsgFail()
// view.showToast(message)
// }
// }
//
// }
//
// override fun onError(e: Throwable?) {
// if (isLinkView) return
//
// view.hideLoading()
// view.showToast(e!!.message)
// view.getUserTaskMsgFail()
// }
//
// })
// }
/**
* 热门活动接口
*/
......
......@@ -6,6 +6,5 @@ import com.mints.goodmoney.mvp.model.UserTaskMsgBean
interface HomeView : BaseView {
fun getHallBaseMsgSuc(data: UserTaskMsgBean)
fun getHallBaseMsgFail()
fun getHomeVedioMsgSuc(data: MainVedioMsgBean)
}
package com.mints.goodmoney.mvp.views
import com.mints.goodmoney.mvp.model.MainVedioMsgBean
interface HorizChannelView : BaseView {
fun getHomeVedioMsgSuc(data: MainVedioMsgBean)
}
\ No newline at end of file
......@@ -89,13 +89,13 @@ public interface LoanService {
@POST("api/saveTerminalInfo")
Observable<BaseResponse<Object>> saveTerminalInfo(@Body Map<String, Object> vo);
/**
* 我的界面信息
*
* @return
*/
@POST("api/getUserHallBaseMsg")
Observable<BaseResponse<MyInfo>> getUserHallBaseMsg();
// /**
// * 我的界面信息
// *
// * @return
// */
// @POST("api/getUserHallBaseMsg")
// Observable<BaseResponse<MyInfo>> getUserHallBaseMsg();
/**
* 热门活动接口
......@@ -313,6 +313,14 @@ public interface LoanService {
@POST("api/getHomeVedioBaseMsg")
Observable<BaseResponse<MainVedioMsgBean>> getHomeVedioMsg();
/**
* 横版视频信息
*
* @return
*/
@POST("api/getSmallHomeVedioBaseMsg")
Observable<BaseResponse<MainVedioMsgBean>> getSmallHomeVedioBaseMsg();
/**
* 阅读时长
*
......@@ -361,6 +369,14 @@ public interface LoanService {
@POST("api/contributionOutToCash")
Observable<BaseResponse<JsonObject>> contributionOutToCash();
/**
* 新版 我的界面信息
*
* @return
*/
@POST("api/getAutoUserHallBaseMsg")
Observable<BaseResponse<MyInfo>> getAutoUserHallBaseMsg();
/**
* 默认http工厂
......
......@@ -87,6 +87,16 @@ class AwardActivity : BaseActivity(), AwardView, View.OnClickListener {
carrierType = Constant.CARRIER_HOMEVEDIO_DOUBLE
}
Constant.CARRIER_SMALLHOMEVEDIO -> {
val vo = HashMap<String, Any>()
vo["carrierType"] = carrierType
awardPresenter.reportAddCoinMsg(vo)
tvAwardContent.setText(curCoin.toString() + "金币已到账")
tvAwardNext.setText("看视频赚${extraId}金币")
carrierType = Constant.CARRIER_SMALLHOMEVEDIO_DOUBLE
}
Constant.CHALLENGE_SHAREFRIEND -> {
val vo = HashMap<String, Any>()
vo["carrierType"] = carrierType
......@@ -190,6 +200,7 @@ class AwardActivity : BaseActivity(), AwardView, View.OnClickListener {
Constant.CARRIER_OFFLINE_DOUBLE, Constant.CARRIER_SIGNIN_HOMEPAGE_CARD,
Constant.CARRIER_CHALLENGE_TURN, Constant.CARRIER_CHALLENGE_CARD,
Constant.CARRIER_WALK_BUBBLE, Constant.CARRIER_HOMEVEDIO_DOUBLE,
Constant.CARRIER_SMALLHOMEVEDIO_DOUBLE,
Constant.CARRIER_WALK, Constant.CARRIER_HOMEWATER -> {
awardVedio()
}
......
......@@ -12,8 +12,6 @@ import com.mints.goodmoney.ui.activitys.base.BaseActivity
import com.mints.goodmoney.utils.SpanUtils
import com.mints.library.utils.json.JsonUtil
import kotlinx.android.synthetic.main.activity_liebao_game.*
import kotlinx.android.synthetic.main.fragment_main_zy.*
import kotlinx.android.synthetic.main.header_activity.*
import kotlinx.android.synthetic.main.header_layout.*
import java.util.*
......
......@@ -14,10 +14,7 @@ import com.mints.goodmoney.common.AppConfig
import com.mints.goodmoney.common.Constant
import com.mints.goodmoney.mvp.views.MainView
import com.mints.goodmoney.ui.activitys.base.BaseActivity
import com.mints.goodmoney.ui.fragment.FriendsFragment
import com.mints.goodmoney.ui.fragment.MoneyFragment
import com.mints.goodmoney.ui.fragment.MyFragment
import com.mints.goodmoney.ui.fragment.PanFragment
import com.mints.goodmoney.ui.fragment.*
import kotlinx.android.synthetic.main.activity_main.*
/**
......@@ -35,6 +32,7 @@ class MainActivity : BaseActivity(), MainView, View.OnClickListener {
private var panFragment: Fragment? = null
private var friendsFragment: Fragment? = null
private var myFragment: Fragment? = null
private var channelFragment: Fragment? = null
private var currentFragment: Fragment? = null
override fun getContentViewLayoutID() = R.layout.activity_main
......@@ -51,25 +49,12 @@ class MainActivity : BaseActivity(), MainView, View.OnClickListener {
// 记录当前Fragment
currentFragment = moneyFragment
}
tab_iv_main.setSelected(true)
tab_tv_main.setSelected(true)
// if (panFragment == null) {
// panFragment = PanFragment()
// }
// if (!panFragment!!.isAdded) {
// // 提交事务
// supportFragmentManager.beginTransaction()
// .add(R.id.content_layout, panFragment!!).commitAllowingStateLoss()
//
// // 记录当前Fragment
// currentFragment = panFragment
// }
// tab_iv_pan.setSelected(true)
// tab_tv_pan.setSelected(true)
tab_iv_main.isSelected = true
tab_tv_main.isSelected = true
tab_rl_main.setOnClickListener(this)
tab_rl_pan.setOnClickListener(this)
tab_rl_channel.setOnClickListener(this)
tab_rl_friends.setOnClickListener(this)
tab_rl_my.setOnClickListener(this)
}
......@@ -118,12 +103,10 @@ class MainActivity : BaseActivity(), MainView, View.OnClickListener {
override fun onClick(view: View) {
when (view.id) {
R.id.tab_rl_main -> clickTab1Layout()
R.id.tab_rl_pan -> clickTab2Layout()
R.id.tab_rl_friends -> {
clickTab3Layout()
// readyGo(AwardActivity::class.java)
}
R.id.tab_rl_my -> clickTab4Layout()
R.id.tab_rl_channel -> clickTab2Layout()
R.id.tab_rl_pan -> clickTab3Layout()
R.id.tab_rl_friends -> clickTab4Layout()
R.id.tab_rl_my -> clickTab5Layout()
}
}
......@@ -137,17 +120,19 @@ class MainActivity : BaseActivity(), MainView, View.OnClickListener {
}
addOrShowFragment(supportFragmentManager.beginTransaction(), moneyFragment!!)
tab_iv_main.setSelected(true)
tab_tv_main.setSelected(true)
tab_iv_pan.setSelected(false)
tab_tv_pan.setSelected(false)
tab_iv_friends.setSelected(false)
tab_tv_friends.setSelected(false)
tab_iv_my.setSelected(false)
tab_tv_my.setSelected(false)
tab_iv_main.isSelected = true
tab_tv_main.isSelected = true
tab_iv_channel.isSelected = false
tab_iv_channel.isSelected = false
tab_iv_pan.isSelected = false
tab_tv_pan.isSelected = false
tab_iv_friends.isSelected = false
tab_tv_friends.isSelected = false
tab_iv_my.isSelected = false
tab_tv_my.isSelected = false
}
fun selectVedio(){
fun selectVedio() {
moneyFragment?.let {
(it as MoneyFragment).selectVedio()
}
......@@ -157,58 +142,84 @@ class MainActivity : BaseActivity(), MainView, View.OnClickListener {
* 点击第二个tab
*/
fun clickTab2Layout() {
AppConfig.fragmentClickFlag = Constant.FRAGMENT_CLICK_CHANNEL
if (channelFragment == null) {
channelFragment = HorizChannelFragment()
}
addOrShowFragment(supportFragmentManager.beginTransaction(), channelFragment!!)
tab_iv_main.isSelected = false
tab_tv_main.isSelected = false
tab_iv_channel.isSelected = true
tab_iv_channel.isSelected = true
tab_iv_pan.isSelected = false
tab_tv_pan.isSelected = false
tab_iv_friends.isSelected = false
tab_tv_friends.isSelected = false
tab_iv_my.isSelected = false
tab_tv_my.isSelected = false
}
/**
* 点击第三个tab
*/
fun clickTab3Layout() {
AppConfig.fragmentClickFlag = Constant.FRAGMENT_CLICK_PAN
if (panFragment == null) {
panFragment = PanFragment()
// panFragment = ZhangyueFragment()
}
addOrShowFragment(supportFragmentManager.beginTransaction(), panFragment!!)
tab_iv_main.setSelected(false)
tab_tv_main.setSelected(false)
tab_iv_pan.setSelected(true)
tab_tv_pan.setSelected(true)
tab_iv_friends.setSelected(false)
tab_tv_friends.setSelected(false)
tab_iv_my.setSelected(false)
tab_tv_my.setSelected(false)
tab_iv_main.isSelected = false
tab_tv_main.isSelected = false
tab_iv_channel.isSelected = false
tab_iv_channel.isSelected = false
tab_iv_pan.isSelected = true
tab_tv_pan.isSelected = true
tab_iv_friends.isSelected = false
tab_tv_friends.isSelected = false
tab_iv_my.isSelected = false
tab_tv_my.isSelected = false
}
/**
* 点击第个tab
* 点击第个tab
*/
private fun clickTab3Layout() {
private fun clickTab4Layout() {
AppConfig.fragmentClickFlag = Constant.FRAGMENT_CLICK_FRIENDS
if (friendsFragment == null) {
friendsFragment = FriendsFragment()
}
addOrShowFragment(supportFragmentManager.beginTransaction(), friendsFragment!!)
tab_iv_main.setSelected(false)
tab_tv_main.setSelected(false)
tab_iv_pan.setSelected(false)
tab_tv_pan.setSelected(false)
tab_iv_friends.setSelected(true)
tab_tv_friends.setSelected(true)
tab_iv_my.setSelected(false)
tab_tv_my.setSelected(false)
tab_iv_main.isSelected = false
tab_tv_main.isSelected = false
tab_iv_channel.isSelected = false
tab_iv_channel.isSelected = false
tab_iv_pan.isSelected = false
tab_tv_pan.isSelected = false
tab_iv_friends.isSelected = true
tab_tv_friends.isSelected = true
tab_iv_my.isSelected = false
tab_tv_my.isSelected = false
}
/**
* 点击第个tab
* 点击第个tab
*/
private fun clickTab4Layout() {
private fun clickTab5Layout() {
AppConfig.fragmentClickFlag = Constant.FRAGMENT_CLICK_MY
if (myFragment == null) {
myFragment = MyFragment()
}
addOrShowFragment(supportFragmentManager.beginTransaction(), myFragment!!)
tab_iv_main.setSelected(false)
tab_tv_main.setSelected(false)
tab_iv_pan.setSelected(false)
tab_tv_pan.setSelected(false)
tab_iv_friends.setSelected(false)
tab_tv_friends.setSelected(false)
tab_iv_my.setSelected(true)
tab_tv_my.setSelected(true)
tab_iv_main.isSelected = false
tab_tv_main.isSelected = false
tab_iv_channel.isSelected = false
tab_iv_channel.isSelected = false
tab_iv_pan.isSelected = false
tab_tv_pan.isSelected = false
tab_iv_friends.isSelected = false
tab_tv_friends.isSelected = false
tab_iv_my.isSelected = true
tab_tv_my.isSelected = true
}
/**
......
......@@ -15,6 +15,7 @@ import com.mints.library.net.netstatus.NetUtils
import com.qq.e.ads.splash.SplashAD
import com.qq.e.ads.splash.SplashADListener
import com.qq.e.comm.util.AdError
import com.yilan.sdk.ui.little.YLLittleVideoFragment
/**
* 后台返回时每次都展示
......@@ -52,6 +53,9 @@ class SplashADActivity : BaseActivity(), SplashADListener {
readyGoOtherActivity()
}
}
// 预加载好兔视频
YLLittleVideoFragment.preloadVideo()
}
override fun isApplyKitKatTranslucency(): Boolean {
......
......@@ -8,6 +8,7 @@ import com.mints.goodmoney.R
import com.mints.goodmoney.common.Constant
import com.mints.goodmoney.common.DeviceInfo
import com.mints.goodmoney.ui.activitys.base.BaseActivity
import com.yilan.sdk.ui.little.YLLittleVideoFragment
import kotlinx.android.synthetic.main.activity_splash.*
import net.grandcentrix.tray.AppPreferences
......@@ -20,7 +21,7 @@ class SplashActivity : BaseActivity() {
private val animationSet by lazy { AnimationSet(true) }
private val ps by lazy { AppPreferences(context) }
override fun isApplyKitKatTranslucency()=false
override fun isApplyKitKatTranslucency() = false
override fun initViewsAndEvents() {
if (!isTaskRoot) {
......@@ -32,9 +33,12 @@ class SplashActivity : BaseActivity() {
// 校验APP签名
checkAppSign()
// 预加载好兔视频
YLLittleVideoFragment.preloadVideo()
}
override fun getContentViewLayoutID()= R.layout.activity_splash
override fun getContentViewLayoutID() = R.layout.activity_splash
override fun toggleIsBack2Left() = true
......@@ -45,7 +49,6 @@ class SplashActivity : BaseActivity() {
}
override fun onDestroy() {
super.onDestroy()
......@@ -57,7 +60,6 @@ class SplashActivity : BaseActivity() {
}
/**
* 校验App签名
*/
......@@ -85,13 +87,13 @@ class SplashActivity : BaseActivity() {
}
private val mAnimationListener: Animation.AnimationListener =
object : Animation.AnimationListener {
override fun onAnimationStart(animation: Animation) {}
override fun onAnimationRepeat(animation: Animation) {}
override fun onAnimationEnd(animation: Animation) {
readyGoOtherActivity()
object : Animation.AnimationListener {
override fun onAnimationStart(animation: Animation) {}
override fun onAnimationRepeat(animation: Animation) {}
override fun onAnimationEnd(animation: Animation) {
readyGoOtherActivity()
}
}
}
private fun readyGoOtherActivity() {
val customVersion: Int = ps.getInt(Constant.CUSTOM_VERSION, 0)
......
......@@ -65,6 +65,9 @@ class SplashYlhActivity : BaseActivity(), SplashADListener {
}
// 校验APP签名
checkAppSign()
// 预加载好兔视频
YLLittleVideoFragment.preloadVideo()
}
override fun isApplyKitKatTranslucency(): Boolean {
......
......@@ -5,28 +5,35 @@ import android.graphics.Color
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.ImageView
import android.widget.ProgressBar
import android.widget.TextView
import androidx.recyclerview.widget.RecyclerView
import com.mints.goodmoney.R
import com.mints.goodmoney.mvp.model.TaskBean
import com.mints.goodmoney.mvp.model.MyInfo
import com.mints.goodmoney.ui.adapter.listener.OnItemChildClickListener
import com.mints.goodmoney.ui.adapter.listener.OnItemClickListener
class MainMyAdapter(context: Context, taskData: MutableList<TaskBean>) : RecyclerView.Adapter<RecyclerView.ViewHolder>() {
class MainMyAdapter(context: Context, taskData: MutableList<MyInfo.AutoListBean>) : RecyclerView.Adapter<RecyclerView.ViewHolder>() {
companion object {
const val TASK_TYPE_HOME = 0x00000001
const val TASK_TYPE_INVITE = 0x00000002
const val TASK_TYPE_VIDEO = 0x00000003
const val TASK_TYPE_GAME = 0x00000004
const val TASK_TYPE_FICTION = 0x00000005
const val TASK_TYPE_DEMO = 0x00000006
// 跳转首页
const val TO_HOME = "TO_HOME"
// 邀请好友
const val APP_SHAREFRIEND = "APP_SHAREFRIEND"
// 看福利视频
const val APP_VEDIO = "APP_VEDIO"
// 试玩平台
const val TO_YWHZ = "TO_YWHZ"
// 玩游戏,赚金币
const val TO_LIEBAO = "TO_LIEBAO"
}
private var mContext: Context = context
private var taskData: List<TaskBean>? = taskData
private var taskData: List<MyInfo.AutoListBean>? = taskData
private var mOnItemClickListener: OnItemClickListener? = null
private var mOnItemChildClickListener: OnItemChildClickListener? = null
......@@ -54,46 +61,74 @@ class MainMyAdapter(context: Context, taskData: MutableList<TaskBean>) : Recycle
holder.itemTaskClick.setOnClickListener { it2 ->
mOnItemChildClickListener?.onItemChildClick(it2, position)
}
holder.itemTaskTitle.text = taskBean.title
holder.itemTaskContent.text = taskBean.title
// 标题
holder.itemTaskTitle.text = taskBean.baseConfig.title
// 内容
holder.itemTaskContent.text = taskBean.baseConfig.context
// 按钮文字
holder.itemTaskClick.text = taskBean.baseConfig.buttonText
// 金币
holder.itemTaskMoney.text = " " + taskBean.baseConfig.coinText
// holder.itemTaskImg.setImageDrawable(mContext.resources.getDrawable(taskBean.imageSrc))
if (taskBean.btnStr.isEmpty()) {
if (taskBean.baseConfig.buttonText == null) {
holder.itemTaskClick.visibility = View.GONE
} else {
holder.itemTaskClick.visibility = View.VISIBLE
holder.itemTaskClick.text = taskBean.btnStr
holder.itemTaskPb.progress = 10
when (taskBean.btnStr) {
"立即领取" -> {
holder.itemTaskClick.setBackgroundResource(R.drawable.shape_btn_orange_complete)
holder.itemTaskClick.setTextColor(Color.WHITE)
}
"已完成" -> {
holder.itemTaskClick.setBackgroundResource(R.drawable.shape_btn_gury)
holder.itemTaskClick.setTextColor(Color.WHITE)
}
else -> {
holder.itemTaskClick.setBackgroundResource(R.drawable.shape_btn_orange)
holder.itemTaskClick.setTextColor(mContext.resources.getColor(R.color.my_color_orange))
// 按钮颜色
if (taskBean.otherConfig != null) {
when (taskBean.otherConfig.status) {
1 -> {
holder.itemTaskClick.setBackgroundResource(R.drawable.shape_btn_orange_complete)
holder.itemTaskClick.setTextColor(Color.WHITE)
}
2 -> {
if (taskBean.baseConfig.taskId == APP_SHAREFRIEND) {
holder.itemTaskClick.setBackgroundResource(R.drawable.shape_btn_orange)
holder.itemTaskClick.setTextColor(mContext.resources.getColor(R.color.my_color_orange))
} else {
holder.itemTaskClick.setBackgroundResource(R.drawable.shape_btn_gury)
holder.itemTaskClick.setTextColor(Color.WHITE)
}
}
0 -> {
holder.itemTaskClick.setBackgroundResource(R.drawable.shape_btn_orange)
holder.itemTaskClick.setTextColor(mContext.resources.getColor(R.color.my_color_orange))
}
}
} else {
holder.itemTaskClick.setBackgroundResource(R.drawable.shape_btn_orange)
holder.itemTaskClick.setTextColor(mContext.resources.getColor(R.color.my_color_orange))
}
}
if (taskBean.progressStr.isEmpty()) {
holder.itemTaskProgress.visibility = View.GONE
// 进度条
if (taskBean.otherConfig != null) {
if (taskBean.baseConfig != null) {
holder.itemTaskPb.visibility = View.VISIBLE
holder.itemTaskPb.progress = taskBean.otherConfig.complete
holder.itemTaskPb.max = taskBean.otherConfig.max
} else {
holder.itemTaskPb.visibility = View.GONE
}
} else {
holder.itemTaskPb.visibility = View.GONE
}
if (taskBean.baseConfig.runingText != null) {
holder.itemTaskProgress.visibility = View.VISIBLE
holder.itemTaskProgress.text = taskBean.progressStr
holder.itemTaskProgress.text = taskBean.baseConfig.runingText
} else {
holder.itemTaskProgress.visibility = View.GONE
}
}
}
}
private inner class TaskHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
// val itemTaskImg: ImageView = itemView.findViewById(R.id.item_title_img)
// val itemTaskImg: ImageView = itemView.findViewById(R.id.item_title_img)
val itemTaskTitle: TextView = itemView.findViewById(R.id.item_task_title)
val itemTaskMoney: TextView = itemView.findViewById(R.id.item_task_money)
val itemTaskProgress: TextView = itemView.findViewById(R.id.item_task_progress)
val itemTaskClick: TextView = itemView.findViewById(R.id.item_task_click)
val itemTaskContent: TextView = itemView.findViewById(R.id.item_task_content)
......
package com.mints.goodmoney.ui.fragment
import android.os.Bundle
import android.os.Handler
import android.os.Looper
import android.text.TextUtils
import android.view.View
import androidx.fragment.app.FragmentTransaction
import com.mints.goodmoney.R
import com.mints.goodmoney.common.AppConfig
import com.mints.goodmoney.common.Constant
import com.mints.goodmoney.mvp.model.MainVedioMsgBean
import com.mints.goodmoney.mvp.presenters.HorizChannelPresenter
import com.mints.goodmoney.mvp.views.HorizChannelView
import com.mints.goodmoney.ui.activitys.AwardActivity
import com.mints.goodmoney.ui.fragment.base.BaseFragment
import com.yilan.sdk.player.ylplayer.YLPlayerConfig
import com.yilan.sdk.player.ylplayer.callback.OnPlayerCallBack
import com.yilan.sdk.ui.category.ChannelFragment
import kotlinx.android.synthetic.main.fragment_horiz_channel.cdvvYilanTime
import kotlinx.android.synthetic.main.fragment_horiz_channel.vs_tips
import net.grandcentrix.tray.AppPreferences
class HorizChannelFragment : BaseFragment(), HorizChannelView, View.OnClickListener {
private val horizChannelPresenter by lazy { HorizChannelPresenter() }
private val ps by lazy { AppPreferences(context) }
private var channelFragment: ChannelFragment? = null
private val videoMaxCount = 12 // 当前缓存视频id最大数
private val videoIdList by lazy { ArrayList<String>() }//记录播放的视频id
// 是否是第一次观看完视频
private var isFirstWatchVideo = true
private var isFirstLoadVideo = true // 首次加载视频初始化
private var rewardDoubleCoin = 0 // 大金币
private var rewardCoin = 0 // 小金币
private var isToCreateReward = true // 是否还有剩余红包 服务器返回
private var isAward = false // 是否可以领金币 本地判断
override fun initViewsAndEvents() {
horizChannelPresenter.attachView(this)
initChannelFragment()
initListener()
// 调用金币视频信息接口
horizChannelPresenter.getSmallHomeVedioBaseMsg()
}
private fun initListener() {
cdvvYilanTime.setOnClickListener(this)
}
override fun getHomeVedioMsgSuc(data: MainVedioMsgBean) {
if (activity == null || requireActivity().isFinishing) {
return
}
ps.put(Constant.MAIN_VEDIO_TIME, data.createRewardNeedTime)
rewardCoin = data.rewardCoin
rewardDoubleCoin = data.rewardDoubleCoin
isToCreateReward = data.isToCreateReward
if (isToCreateReward) {
// 防止界面切换 重置倒计时
// 第一次能过 isFirstLoadVedio 判断好兔先加载视频
if (!isFirstLoadVideo && !cdvvYilanTime.isPlaying && !isAward) {
cdvvYilanTime?.reset()
cdvvYilanTime?.start()
}
} else {
stopDownloadTime()
}
}
private fun initChannelFragment() {
val transaction: FragmentTransaction = childFragmentManager.beginTransaction()
if (channelFragment == null) {
// 设置点击的item播放状态,callback返回true标识用户已经处理了event,返回false,标识使用播放器内部逻辑处理event。
YLPlayerConfig.config().registerPlayerCallBack(object : OnPlayerCallBack {
override fun onStart(p0: String?, videoid: String, p2: String?) {
// 防止网络异常时, 第一次加载倒计时红包
if (isFirstLoadVideo) {
isFirstLoadVideo = false
initTimeView()
} else {
resumeDownloadTime(videoid)
}
}
override fun onPause(p0: String?, p1: String?, p2: String?) {
pauseDownloadTime()
}
override fun onResume(p0: String?, videoid: String, p2: String?) {
resumeDownloadTime(videoid)
}
override fun onComplete(p0: String?, videoid: String, p2: String?) {
}
override fun onLoopComplete(pager: String?, videoID: String, taskID: String?, num: Int) {
addVedioIdList(videoID)
pauseDownloadTime()
}
override fun onStuckStart(p0: String?, p1: String?, p2: String?) {
}
override fun onStuckEnd(p0: String?, p1: String?, p2: String?) {
}
override fun onError(p0: String?, p1: String?, p2: String?) {
pauseDownloadTime()
}
override fun onStop(p0: String?, p1: String?, p2: String?) {
}
})
channelFragment = ChannelFragment()
transaction.add(R.id.yilan_fragment_frame_container, channelFragment!!, ChannelFragment::class.java.simpleName)
} else {
transaction.show(channelFragment!!)
}
transaction.commitAllowingStateLoss()
}
override fun getContentViewLayoutID() = R.layout.fragment_horiz_channel
override fun onClick(v: View?) {
when (v?.id) {
R.id.cdvvYilanTime -> {
if (isAward && isToCreateReward) {
isAward = false
val bundle = Bundle()
bundle.putInt(Constant.MAIN_CUR_COIN, rewardCoin)
bundle.putString(Constant.MAIN_CARRIER_TYPE, Constant.CARRIER_SMALLHOMEVEDIO)
bundle.putString(Constant.MAIN_EXTRA_ID, rewardDoubleCoin.toString())
readyGo(AwardActivity::class.java, bundle)
}
}
}
}
override fun setUserVisibleHint(isVisibleToUser: Boolean) {
super.setUserVisibleHint(isVisibleToUser)
channelFragment?.userVisibleHint = isVisibleToUser
}
override fun onHiddenChanged(hidden: Boolean) {
if (hidden) {
onPause()
} else {
onResume()
}
super.onHiddenChanged(hidden)
channelFragment?.onHiddenChanged(hidden)
}
override fun onResume() {
super.onResume()
if (AppConfig.fragmentClickFlag == Constant.FRAGMENT_CLICK_CHANNEL) {
channelFragment?.onResume()
}
}
override fun onPause() {
super.onPause()
channelFragment?.onPause()
// pauseDownloadTime()
}
/**
* 倒计时红包暂停
*/
private fun pauseDownloadTime() {
cdvvYilanTime?.pause()
}
/**
* 将播放的id记录到list中
*/
private fun addVedioIdList(id: String) {
// 达到12个视频时 删除前10个记录
if (videoIdList.size >= videoMaxCount) {
videoIdList.subList(0, 10).clear()
}
if (!videoIdList.contains(id)) videoIdList.add(id)
}
/**
*用户主动暂时或网络异常结束后 重新加载倒计时红包
*/
private fun resumeDownloadTime(id: String) {
if (!TextUtils.isEmpty(id)) {
if (videoIdList.contains(id)) {
cdvvYilanTime?.pause()
return
}
if (!isAward) {
cdvvYilanTime?.resume()
}
}
}
/**
* 停止转动
*/
private fun stopDownloadTime() {
cdvvYilanTime?.stop()
}
/**
* 红包倒计时初始化
*/
private fun initTimeView() {
cdvvYilanTime.setCountDownVedioListener {
if (isFirstWatchVideo) {
// 第一次观看完视频提醒用户
val vs = vs_tips.inflate()
Handler(Looper.getMainLooper()).postDelayed({
vs.visibility = View.GONE
}, 3000)
isFirstWatchVideo = false
}
// 转满一圈,可领金币标记
isAward = true
cdvvYilanTime?.showRedbox()
stopDownloadTime()
}
val videoTime = ps.getInt(Constant.MAIN_VEDIO_TIME, 30)
cdvvYilanTime.setTime(videoTime)
cdvvYilanTime.start()
}
override fun onDestroy() {
super.onDestroy()
cdvvYilanTime?.setCountDownVedioListener(null)
horizChannelPresenter.detachView()
YLPlayerConfig.config().unRegisterPlayerCallback()
}
}
\ No newline at end of file
......@@ -22,7 +22,6 @@ import com.mints.goodmoney.ui.fragment.base.BaseFragment
import com.mints.goodmoney.ui.widgets.DialogListener
import com.mints.goodmoney.ui.widgets.PowerDialog
import com.mints.goodmoney.utils.LogUtil
import com.yilan.sdk.common.ui.mvp.YLPresenter
import com.yilan.sdk.player.ylplayer.YLPlayerConfig
import com.yilan.sdk.player.ylplayer.callback.OnPlayerCallBack
import com.yilan.sdk.ui.little.YLLittleVideoFragment
......@@ -47,7 +46,7 @@ class MainFragment : BaseFragment(), HomeView, View.OnClickListener {
private var rewardDoubleCoin = 0 // 大金币
private var rewardCoin = 0 // 小金币
private var littleVideoFragment: YLLittleVideoFragment? = null
private val VEDIO_MAX_COUNT = 12 // 当前缓存视频id最大数
private val videoMaxCount = 12 // 当前缓存视频id最大数
private val vedioIdList by lazy { ArrayList<String>() }//记录播放的视频id
private var isToCreateReward = true // 是否还有剩余红包 服务器返回
......@@ -58,7 +57,7 @@ class MainFragment : BaseFragment(), HomeView, View.OnClickListener {
private var vedioAdingManager: VedioAdingManager? = null
// 是否是第一次观看完视频
private var isFristWacthVideo = true
private var isFirstWatchVideo = true
override fun getContentViewLayoutID() = R.layout.fragment_main_first
......@@ -279,7 +278,7 @@ class MainFragment : BaseFragment(), HomeView, View.OnClickListener {
*/
private fun addVedioIdList(id: String) {
// 达到12个视频时 删除前10个记录
if (vedioIdList.size >= VEDIO_MAX_COUNT) {
if (vedioIdList.size >= videoMaxCount) {
vedioIdList.subList(0, 10).clear()
}
if (!vedioIdList.contains(id)) vedioIdList.add(id)
......@@ -321,13 +320,13 @@ class MainFragment : BaseFragment(), HomeView, View.OnClickListener {
*/
private fun initTimeview() {
cdvvYilanTime.setCountDownVedioListener {
if (isFristWacthVideo) {
if (isFirstWatchVideo) {
// 第一次观看完视频提醒用户
val vs = vs_tips.inflate()
Handler(Looper.getMainLooper()).postDelayed({
vs.visibility = View.GONE
}, 3000)
isFristWacthVideo = false
isFirstWatchVideo = false
}
// 转满一圈,可领金币标记
......@@ -335,7 +334,7 @@ class MainFragment : BaseFragment(), HomeView, View.OnClickListener {
cdvvYilanTime?.showRedbox()
stopDownloadTime()
}
var vedioTime = ps.getInt(Constant.MAIN_VEDIO_TIME, 30)
val vedioTime = ps.getInt(Constant.MAIN_VEDIO_TIME, 30)
cdvvYilanTime.setTime(vedioTime)
cdvvYilanTime.start()
}
......
......@@ -72,7 +72,7 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
private var signCardBean: SignCardBean? = null
// 任务数据
private val dataList: MutableList<TaskBean> = mutableListOf()
private val dataList: MutableList<MyInfo.AutoListBean> = mutableListOf()
private var mainMyAdapter: MainMyAdapter? = null
// 轮播图只展示一次
......@@ -90,7 +90,7 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
initRecy()
if (!TextUtils.isEmpty(userManager.userID)) {
myPresenter.getUserHallBaseMsg()
myPresenter.getAutoUserHallBaseMsg()
// 登录成功的用户初始化鱼丸盒子
if (userManager.userIsLogin()) {
......@@ -143,7 +143,7 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
super.onResume()
if (AppConfig.fragmentClickFlag == Constant.FRAGMENT_CLICK_MY) {
if (!TextUtils.isEmpty(userManager.userID)) {
myPresenter.getUserHallBaseMsg()
myPresenter.getAutoUserHallBaseMsg()
} else {
// 游客登录
myPresenter.userLogin()
......@@ -225,7 +225,7 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
}
override fun userLoginSuc() {
myPresenter.getUserHallBaseMsg()
myPresenter.getAutoUserHallBaseMsg()
myPresenter.getHallBaseMsg()
}
......@@ -253,7 +253,7 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
override fun onRefresh(refreshLayout: RefreshLayout) {
if (userManager.userID.isNotEmpty()) {
myPresenter.getUserHallBaseMsg()
myPresenter.getAutoUserHallBaseMsg()
} else {
myPresenter.userLogin()
}
......@@ -410,48 +410,50 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
private fun handleRecyData() {
dataList.clear()
// 跳转首页视频
val task1 = TaskBean(R.mipmap.icon_my_coin, "分分钟赚金币,翻倍还能赚更多", "", "去赚钱", 1)
// 邀好友赚金币
var progressStrInvited = ""
var btnStr = ""
if (userConfig != null) {
progressStrInvited = "(" + userConfig!!.taskShareFriend.complete + "/" + userConfig!!.taskShareFriend.max + ")"
if (userConfig!!.taskShareFriend.complete == userConfig!!.taskShareFriend.max) {
btnStr = "已完成"
} else {
btnStr = if (userConfig!!.taskShareFriend.status == 0) "去邀请" else "立即领取"
}
}
val task2 = TaskBean(R.mipmap.icon_my_invite, "邀好友,赚金币", progressStrInvited, btnStr, 2)
// 看福利视频赚金币
var progressStrVideo = ""
var task3Str = ""
if (userConfig != null) {
progressStrVideo = "(" + userConfig!!.taskVeido.complete + "/" + userConfig!!.taskVeido.max + ")"
if (userConfig!!.taskVeido.complete == userConfig!!.taskVeido.max) {
task3Str = "已完成"
} else {
task3Str = "赚金币"
}
}
val task3 = TaskBean(R.mipmap.icon_my_video, "看福利视频赚金币", progressStrVideo, task3Str, 3)
// 玩游戏,赚金币
var task4Str = ""
if (userConfig != null) {
task4Str = if (userConfig!!.taskGame.status == 0) "赚金币" else (if (userConfig!!.taskGame.status == 1) "立即领取" else "已完成")
}
val task4 = TaskBean(R.mipmap.icon_my_game, "玩游戏,赚金币", "", task4Str, 4)
// 小说免费看,金币大家赚
// val task5 = TaskBean(R.mipmap.icon_my_fiction, "小说免费看,金币大家赚", "", "去阅读", 5)
// 试玩平台
val task6 = TaskBean(R.mipmap.icon_my_demo, "试玩平台", "", "赚金币", 5)
dataList.add(task1)
dataList.add(task2)
dataList.add(task3)
dataList.add(task4)
// dataList.add(task5)
dataList.add(task6)
dataList.addAll(userConfig!!.autoList)
// // 跳转首页视频
// val task1 = TaskBean(R.mipmap.icon_my_coin, "分分钟赚金币,翻倍还能赚更多", "", "去赚钱", 1)
// // 邀好友赚金币
// var progressStrInvited = ""
// var btnStr = ""
// if (userConfig != null) {
// progressStrInvited = "(" + userConfig!!.taskShareFriend.complete + "/" + userConfig!!.taskShareFriend.max + ")"
// if (userConfig!!.taskShareFriend.complete == userConfig!!.taskShareFriend.max) {
// btnStr = "已完成"
// } else {
// btnStr = if (userConfig!!.taskShareFriend.status == 0) "去邀请" else "立即领取"
// }
// }
// val task2 = TaskBean(R.mipmap.icon_my_invite, "邀好友,赚金币", progressStrInvited, btnStr, 2)
// // 看福利视频赚金币
// var progressStrVideo = ""
// var task3Str = ""
// if (userConfig != null) {
// progressStrVideo = "(" + userConfig!!.taskVeido.complete + "/" + userConfig!!.taskVeido.max + ")"
// if (userConfig!!.taskVeido.complete == userConfig!!.taskVeido.max) {
// task3Str = "已完成"
// } else {
// task3Str = "赚金币"
// }
// }
// val task3 = TaskBean(R.mipmap.icon_my_video, "看福利视频赚金币", progressStrVideo, task3Str, 3)
// // 玩游戏,赚金币
// var task4Str = ""
// if (userConfig != null) {
// task4Str = if (userConfig!!.taskGame.status == 0) "赚金币" else (if (userConfig!!.taskGame.status == 1) "立即领取" else "已完成")
// }
// val task4 = TaskBean(R.mipmap.icon_my_game, "玩游戏,赚金币", "", task4Str, 4)
// // 小说免费看,金币大家赚
//// val task5 = TaskBean(R.mipmap.icon_my_fiction, "小说免费看,金币大家赚", "", "去阅读", 5)
// // 试玩平台
// val task6 = TaskBean(R.mipmap.icon_my_demo, "试玩平台", "", "赚金币", 5)
// dataList.add(task1)
// dataList.add(task2)
// dataList.add(task3)
// dataList.add(task4)
//// dataList.add(task5)
// dataList.add(task6)
mainMyAdapter?.notifyDataSetChanged()
}
......@@ -467,69 +469,113 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
when (view?.id) {
R.id.item_task_click -> {
val taskBean = dataList[position]
when (taskBean.type) {
when (taskBean.baseConfig.taskId) {
// 跳转首页视频
MainMyAdapter.TASK_TYPE_HOME -> {
MainMyAdapter.TO_HOME -> {
val activity: MainActivity? = activity as MainActivity?
activity?.clickTab1Layout()
activity?.selectVedio()
}
// 邀好友赚金币
MainMyAdapter.TASK_TYPE_INVITE -> {
if (userConfig!!.taskShareFriend!!.complete >= userConfig!!.taskShareFriend!!.max) {
showToast("邀好友赚金币任务已完成,请明日再来")
return
}
if (taskBean.btnStr == "立即领取") {
if (userConfig!!.taskShareFriend!!.complete < userConfig!!.taskShareFriend!!.max) {
val bundle = Bundle()
bundle.putInt(Constant.MAIN_CUR_COIN, userConfig!!.taskShareFriend!!.coin)
bundle.putString(Constant.MAIN_CARRIER_TYPE, Constant.CHALLENGE_SHAREFRIEND)
readyGo(AwardActivity::class.java, bundle)
}
} else {
val wechatSp = ShareParams()
wechatSp.shareType = Platform.SHARE_WEBPAGE
wechatSp.title = Constant.SHARE_TITLE
wechatSp.text = Constant.SHARE_CONTENT
wechatSp.imageData = ImageUtil.drawableToBitmap(ContextCompat.getDrawable(requireContext(), R.mipmap.ic_launcher))
wechatSp.url = Constant.SHARE_URL
val wechat = ShareSDK.getPlatform(Wechat.NAME)
if (wechat.isClientValid) {
myPresenter.cmtShareStatus()
// 执行图文分享
wechat.share(wechatSp)
} else {
showToast("请先安装微信")
MainMyAdapter.APP_SHAREFRIEND -> {
if (taskBean.otherConfig != null) {
// if (taskBean.otherConfig.complete >= taskBean.otherConfig.max) {
// showToast("邀好友赚金币任务已完成,请明日再来")
// return
// }
when (taskBean.otherConfig.status) {
0 -> {
val wechatSp = ShareParams()
wechatSp.shareType = Platform.SHARE_WEBPAGE
wechatSp.title = Constant.SHARE_TITLE
wechatSp.text = Constant.SHARE_CONTENT
wechatSp.imageData = ImageUtil.drawableToBitmap(ContextCompat.getDrawable(requireContext(), R.mipmap.ic_launcher))
wechatSp.url = Constant.SHARE_URL
val wechat = ShareSDK.getPlatform(Wechat.NAME)
if (wechat.isClientValid) {
myPresenter.cmtShareStatus()
// 执行图文分享
wechat.share(wechatSp)
} else {
showToast("请先安装微信")
}
}
1 -> {
// if (taskBean.otherConfig.complete < taskBean.otherConfig.max) {
val bundle = Bundle()
bundle.putInt(Constant.MAIN_CUR_COIN, taskBean.otherConfig.coin)
bundle.putString(Constant.MAIN_CARRIER_TYPE, Constant.CHALLENGE_SHAREFRIEND)
readyGo(AwardActivity::class.java, bundle)
// }
}
2 -> {
val wechatSp = ShareParams()
wechatSp.shareType = Platform.SHARE_WEBPAGE
wechatSp.title = Constant.SHARE_TITLE
wechatSp.text = Constant.SHARE_CONTENT
wechatSp.imageData = ImageUtil.drawableToBitmap(ContextCompat.getDrawable(requireContext(), R.mipmap.ic_launcher))
wechatSp.url = Constant.SHARE_URL
val wechat = ShareSDK.getPlatform(Wechat.NAME)
if (wechat.isClientValid) {
myPresenter.cmtShareStatus()
// 执行图文分享
wechat.share(wechatSp)
} else {
showToast("请先安装微信")
}
}
}
}
}
// 看福利视频赚金币
MainMyAdapter.TASK_TYPE_VIDEO -> {
if (userConfig!!.taskVeido!!.complete >= userConfig!!.taskVeido!!.max) {
showToast("看福利视频赚金币任务已完成,请明日再来")
return
MainMyAdapter.APP_VEDIO -> {
if (taskBean.otherConfig != null) {
if (taskBean.otherConfig.complete >= taskBean.otherConfig.max) {
showToast("看福利视频赚金币任务已完成,请明日再来")
return
}
awardVedio(taskBean.otherConfig.coin)
}
// if (userConfig!!.taskVeido!!.complete >= userConfig!!.taskVeido!!.max) {
// showToast("看福利视频赚金币任务已完成,请明日再来")
// return
// }
awardVedio(userConfig!!.taskVeido!!.coin)
}
// 玩游戏,赚金币
MainMyAdapter.TASK_TYPE_GAME -> {
if (taskBean.btnStr == "立即领取") {
val bundle = Bundle()
bundle.putInt(Constant.MAIN_CUR_COIN, userConfig?.taskGame?.coin!!)
bundle.putString(Constant.MAIN_CARRIER_TYPE, Constant.CARRIER_GAME_ONLINE)
readyGo(AwardActivity::class.java, bundle)
} else {
readyGo(LiebaoGameActivity::class.java)
MainMyAdapter.TO_LIEBAO -> {
if (taskBean.otherConfig != null) {
when (taskBean.otherConfig.status) {
0 -> {
readyGo(LiebaoGameActivity::class.java)
}
1 -> {
val bundle = Bundle()
bundle.putInt(Constant.MAIN_CUR_COIN, taskBean.otherConfig.coin)
bundle.putString(Constant.MAIN_CARRIER_TYPE, Constant.CARRIER_GAME_ONLINE)
readyGo(AwardActivity::class.java, bundle)
}
2 -> {
readyGo(LiebaoGameActivity::class.java)
}
}
}
// if (taskBean.btnStr == "立即领取") {
// val bundle = Bundle()
// bundle.putInt(Constant.MAIN_CUR_COIN, userConfig?.taskGame?.coin!!)
// bundle.putString(Constant.MAIN_CARRIER_TYPE, Constant.CARRIER_GAME_ONLINE)
// readyGo(AwardActivity::class.java, bundle)
// } else {
// readyGo(LiebaoGameActivity::class.java)
// }
}
// 小说免费看,金币大家赚
// MainMyAdapter.TASK_TYPE_FICTION -> {
// }
// 试玩平台
MainMyAdapter.TASK_TYPE_FICTION -> {
MainMyAdapter.TO_YWHZ -> {
if (!userManager.userIsLogin()) {
readyGo(LoginActivity::class.java)
return
......@@ -572,7 +618,7 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
R.id.btn_withdraw -> {
if (userConfig == null) {
showToast("网络异常,请检测网络!")
myPresenter.getUserHallBaseMsg()
myPresenter.getAutoUserHallBaseMsg()
return
}
......@@ -581,7 +627,7 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
R.id.btn_coinRecord -> {
if (userConfig == null) {
showToast("网络异常,请检测网络!")
myPresenter.getUserHallBaseMsg()
myPresenter.getAutoUserHallBaseMsg()
return
}
......@@ -613,10 +659,9 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
override fun onItemClick(parent: AdapterView<*>, view: View, position: Int, id: Long) {
if (hotList!!.isNotEmpty()) {
val hotBean: BannerBean.ListBean = hotList!![position]
val hotTourl: String = hotBean.toUrl
// 自有界面
when (hotTourl) {
when (hotBean.toUrl) {
Constant.HOT_ACTIVITY_WATER -> {
readyGo(WaterActivity::class.java)
}
......@@ -643,7 +688,7 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
* 获取激励视频
*/
private fun awardVedio(coin: Int) {
if (vedioAdingManager.getVedioFinishFlag()) {
if (vedioAdingManager.vedioFinishFlag) {
showToast("今日视频已看完,请明天再来吧")
return
}
......@@ -651,8 +696,8 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
showLoading("加载中...")
val bean = VedioAdingBean()
bean.setCarrierType(Constant.CARRIER_VERSUS_VIDEO)
bean.setCurCoin(coin)
bean.carrierType = Constant.CARRIER_VERSUS_VIDEO
bean.curCoin = coin
loadVedio(vedioAdingManager, bean, true)
}
......@@ -693,8 +738,16 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
private fun vedioAdingSuccess(adType: String) {
val bundle = Bundle()
bundle.putInt(Constant.MAIN_CUR_COIN, userConfig?.taskVeido?.coin!!)
bundle.putString(Constant.MAIN_CARRIER_TYPE, Constant.CARRIER_VERSUS_VIDEO)
readyGo(AwardActivity::class.java, bundle)
for (autoListBean in userConfig!!.autoList) {
if (autoListBean.baseConfig.taskId == MainMyAdapter.APP_VEDIO) {
if (autoListBean.otherConfig != null) {
bundle.putInt(Constant.MAIN_CUR_COIN, autoListBean.otherConfig.coin)
bundle.putString(Constant.MAIN_CARRIER_TYPE, Constant.CARRIER_VERSUS_VIDEO)
readyGo(AwardActivity::class.java, bundle)
return
}
}
}
}
}
\ No newline at end of file
......@@ -9,24 +9,20 @@ import com.mints.goodmoney.R
import com.mints.goodmoney.common.AppConfig
import com.mints.goodmoney.common.Constant
import com.mints.goodmoney.mvp.presenters.BookPresenter
import com.mints.goodmoney.mvp.presenters.HomePresenter
import com.mints.goodmoney.mvp.views.BookView
import com.mints.goodmoney.mvp.views.HomeView
import com.mints.goodmoney.ui.activitys.AwardActivity
import com.mints.goodmoney.ui.fragment.base.LazyLoadBaseFragment
import com.mints.goodmoney.utils.LogUtil
import com.mints.goodmoney.utils.SpanUtils
import kotlinx.android.synthetic.main.activity_drawcash.*
import kotlinx.android.synthetic.main.fragment_main_zy.*
private val TAG = ZhangyueFragment::class.java.simpleName
/**
* 描述:掌阅书城
* 作者:孟崔广
*/
class ZhangyueFragment : LazyLoadBaseFragment(), BookView, IreaderApi.OnReadChangeListener {
private val TAG = ZhangyueFragment::class.java.simpleName
private val bookPresenter by lazy { BookPresenter() }
private var bookFragment: Fragment? = null
......
......@@ -49,6 +49,29 @@
android:textSize="11sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/tab_rl_channel"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.0"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:id="@+id/tab_iv_channel"
android:layout_width="25dp"
android:layout_height="25dp"
android:src="@drawable/tab_pan_btn" />
<TextView
android:id="@+id/tab_tv_channel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/bottom_tab_channel"
android:textColor="@drawable/item_txt_sel"
android:textSize="11sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/tab_rl_pan"
android:layout_width="0dp"
......
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:id="@+id/yilan_fragment_frame_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingTop="20dp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end|bottom"
android:layout_marginEnd="8dp"
android:orientation="horizontal">
<ViewStub
android:id="@+id/vs_tips"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout="@layout/layout_watchvideo_tips" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:orientation="vertical">
<ImageView
android:id="@+id/ivMainBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="20dp"
android:src="@mipmap/ic_main_box"
android:visibility="gone" />
<com.mints.goodmoney.ui.widgets.CountDownVedioView
android:id="@+id/cdvvYilanTime"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="100dp" />
</LinearLayout>
</LinearLayout>
</FrameLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout
android:id="@+id/yilan_fragment_frame_container"
android:layout_width="match_parent"
android:layout_height="match_parent">
</RelativeLayout>
android:layout_height="match_parent" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentBottom="true"
android:layout_gravity="end|bottom"
android:layout_marginEnd="8dp"
android:orientation="horizontal">
......@@ -48,4 +43,4 @@
android:layout_marginBottom="270dp" />
</LinearLayout>
</LinearLayout>
</RelativeLayout>
\ No newline at end of file
</FrameLayout>
\ No newline at end of file
......@@ -3,7 +3,8 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="10dp">
android:paddingTop="10dp"
android:paddingBottom="10dp">
<!-- <ImageView-->
<!-- android:id="@+id/item_title_img"-->
......@@ -28,7 +29,6 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text=" +100金币"
android:textColor="@color/main_mints"
android:textSize="15sp"
app:layout_constraintStart_toEndOf="@id/item_task_title"
......@@ -36,7 +36,7 @@
<TextView
android:id="@+id/item_task_content"
android:layout_width="200dp"
android:layout_width="260dp"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:textColor="@color/grayc"
......
......@@ -12,6 +12,7 @@
<!-- 项目主页string -->
<string name="bottom_tab_main">首页</string>
<string name="bottom_tab_pan">大转盘</string>
<string name="bottom_tab_channel">短视频</string>
<string name="bottom_tab_friends">邀请好友</string>
<string name="bottom_tab_my">个人中心</string>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment