Commit e2f9aea3 authored by mengcuiguang's avatar mengcuiguang

代码优化

parent 7b02cff9
......@@ -417,6 +417,7 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener,
//策略场景类调起支付方法开始支付,以及接收回调。
RxPay.pay(wxPay, this, wxPayInfoImpl, object : IPayCallback {
override fun success() {
AppConfig.showVipAdDialog = false
UserManager.getInstance().vipFlag = true
vipPresenter.queryVipOrder(wxParanBean.tid.toString(), true)
}
......@@ -454,6 +455,7 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener,
//策略场景类调起支付方法开始支付,以及接收回调。
RxPay.pay(aliPay, this, alipayInfoImpl, object : IPayCallback {
override fun success() {
AppConfig.showVipAdDialog = false
UserManager.getInstance().vipFlag = true
vipPresenter.queryVipOrder(wxParanBean.tid.toString(), true)
}
......
......@@ -2,6 +2,8 @@ package com.duben.xixiplaylet.video.csj
import android.app.Dialog
import android.os.Bundle
import android.os.Handler
import android.os.Looper
import android.util.Log
import android.view.View
import android.widget.Button
......@@ -42,6 +44,7 @@ import com.duben.library.utils.GlideUtils
import com.duben.library.utils.nodoubleclick.AntiShake
import com.duben.xixiplaylet.common.AppConfig
import com.duben.xixiplaylet.mvp.model.VipBean
import com.duben.xixiplaylet.ui.widgets.DetailAdDialog
import kotlinx.android.synthetic.main.drama_activity_api_detail.*
import kotlinx.android.synthetic.main.drama_activity_api_detail.iv_lucky_gif
import kotlinx.android.synthetic.main.drama_activity_api_detail.ll_lucky
......@@ -54,7 +57,7 @@ import kotlinx.android.synthetic.main.fragment_main.*
* @desc
*/
class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClickListener,
VideoView, View.OnClickListener {
VideoView, View.OnClickListener {
companion object {
private const val TAG = "DramaApiDetailActivity"
......@@ -109,6 +112,10 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
private var mVedioBean: VedioBean? = null
private var mCurrentIndex = 0
private var currentDramaIndex = 0
private var detailAdDialog: DetailAdDialog? = null
override fun getBundleExtras(extras: Bundle?) {
val json = extras?.getString(Constant.VEDIO_BEAN)
......@@ -183,7 +190,8 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
unlock.visibility = View.GONE
}
tv_title.text = if (AppConfig.firstVipPrice == 0.0) "解锁后续剧集" else "${AppConfig.firstVipPrice}元解锁后续剧集"
tv_title.text =
if (AppConfig.firstVipPrice == 0.0) "解锁后续剧集" else "${AppConfig.firstVipPrice}元解锁后续剧集"
if (mVedioBean!!.collect == 0) {
......@@ -211,7 +219,7 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
dpWidget?.let { widget ->
supportFragmentManager.beginTransaction().replace(R.id.fl_container, widget.fragment)
.commit()
.commit()
leaveBtn?.setOnClickListener {
finish()
......@@ -220,6 +228,7 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
val bundle = Bundle()
bundle.putString(VipActivity.VEDIO_ID, mVedioBean!!.vedioId.toString())
bundle.putString(VipActivity.THIRD_ID, mVedioBean!!.thirdId)
bundle.putBoolean(VipActivity.IS_DETAIL, true)
readyGo(VipActivity::class.java, bundle)
}
}
......@@ -230,22 +239,22 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
private fun initWidget() {
drama?.let { drama ->
dpWidget = DPSdk.factory().createDramaDetail(
DPWidgetDramaDetailParams.obtain()
.detailConfig(
DPDramaDetailConfig.obtain(mode)
.bottomOffset(20)
.infiniteScrollEnabled(enableInfiniteScroll)
.hideLeftTopTips(hideLeftTopTips, null)
.showCellularToast(true)
.hideMore(hideMore)
.listener(dramaListener)
.adListener(dramaAdListener)
.setCustomReport(enableCustomReport) { context, id ->
// 举报
}
)
.id(drama.id)
.index(drama.index)
DPWidgetDramaDetailParams.obtain()
.detailConfig(
DPDramaDetailConfig.obtain(mode)
.bottomOffset(20)
.infiniteScrollEnabled(enableInfiniteScroll)
.hideLeftTopTips(hideLeftTopTips, null)
.showCellularToast(true)
.hideMore(hideMore)
.listener(dramaListener)
.adListener(dramaAdListener)
.setCustomReport(enableCustomReport) { context, id ->
// 举报
}
)
.id(drama.id)
.index(drama.index)
// .currentDuration(currentDuration)
)
}
......@@ -266,6 +275,14 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
// 重置状态
resetData()
}
// vip界面返回弹出广告弹窗
if (AppConfig.showVipAdDialog && !UserManager.getInstance().vipFlag) {
Handler(Looper.getMainLooper()).postDelayed({
adDialog()
AppConfig.showVipAdDialog = false
}, 300)
}
}
override fun onPause() {
......@@ -377,18 +394,18 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
}
override fun isNeedBlock(
drama: DPDrama?,
index: Int,
map: MutableMap<String, Any>?
drama: DPDrama?,
index: Int,
map: MutableMap<String, Any>?
): Boolean {
drama ?: return false
Log.d(TAG, "isNeedBlock: index = $index")
val unlockIndex = mUnlockIndexMap[drama.id] ?: mInitUnlockIndex
val hasUnlockList = mHasUnlockIndexMap[drama.id] ?: mutableListOf()
Log.d(
TAG,
"isNeedBlock: index = $index" + " " + unlockIndex + "s" + drama.id + mHasUnlockIndexMap +
" --- " + (index > unlockIndex && hasUnlockList.contains(index).not())
TAG,
"isNeedBlock: index = $index" + " " + unlockIndex + "s" + drama.id + mHasUnlockIndexMap +
" --- " + (index > unlockIndex && hasUnlockList.contains(index).not())
)
info_tv.text = String.format("第%d集", index)
......@@ -411,30 +428,31 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
}
override fun showAdIfNeeded(
drama: DPDrama?,
callback: Callback?,
map: MutableMap<String, Any>?
drama: DPDrama?,
callback: Callback?,
map: MutableMap<String, Any>?
) {
super.showAdIfNeeded(drama, callback, map)
drama ?: return
Log.d(TAG, "showAdIfNeeded:" + map?.toString())
blockView?.visibility = View.VISIBLE
unlockCallback = callback
currentDramaIndex = dpWidget?.currentDramaIndex!!
// 展示广告
if (!UserManager.getInstance().newFlag) {
tv_title.text = String.format(
"解锁%s·第%d-%d集",
drama.title,
mInitUnlockIndex + 1,
mInitUnlockIndex + lockSet
"解锁%s·第%d-%d集",
drama.title,
mInitUnlockIndex + 1,
mInitUnlockIndex + lockSet
)
} else {
tv_title.text = if (AppConfig.firstVipPrice == 0.0) "解锁后续剧集" else "${AppConfig.firstVipPrice}元解锁后续剧集"
tv_title.text =
if (AppConfig.firstVipPrice == 0.0) "解锁后续剧集" else "${AppConfig.firstVipPrice}元解锁后续剧集"
}
......@@ -444,18 +462,18 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
unlockBtn?.setOnClickListener {
val carrierType = Constant.CARRIERTYPE_CSJ_VEDIO
AdManager.instance.showAd(this@DramaApiDetailActivity, carrierType,
object : AdStatusListener {
var canFail = false
override fun adSuccess() {
canFail = true
}
override fun adFail() {
if (canFail) return
NoPreAdManager.loadVideoAd(
this@DramaApiDetailActivity,
carrierType, object : AdStatusListener {
object : AdStatusListener {
var canFail = false
override fun adSuccess() {
canFail = true
}
override fun adFail() {
if (canFail) return
NoPreAdManager.loadVideoAd(
this@DramaApiDetailActivity,
carrierType, object : AdStatusListener {
override fun adFail() {
showToast("广告太火爆了,请稍候再试")
}
......@@ -476,14 +494,14 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
// 更新解锁集数
for (i in 1 until lockSet) {
val hasUnlockList: MutableList<Int> =
mHasUnlockIndexMap[drama.id]
?: mutableListOf()
mHasUnlockIndexMap[drama.id]
?: mutableListOf()
hasUnlockList.add(widget.currentDramaIndex + i)
mHasUnlockIndexMap[drama.id] = hasUnlockList
}
mInitUnlockIndex = mUnlockIndexMap[drama.id]!! + lockSet
mUnlockIndexMap[drama.id] =
mUnlockIndexMap[drama.id]!! + lockSet
mUnlockIndexMap[drama.id]!! + lockSet
mVedioBean!!.unlockIndex = mInitUnlockIndex
// 播放当前集
......@@ -495,37 +513,37 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
callback?.onDramaRewardArrived() // 解锁当前集
}
})
}
override fun adClose(vo: HashMap<String, Any>?) {
vo?.let {
if (isThirdId) {
it["thirdId"] = "" + mVedioBean!!.thirdId
} else {
it["vedioId"] = "" + mVedioBean!!.vedioId
}
videoPresenter.unlock(it)
}
override fun adClose(vo: HashMap<String, Any>?) {
vo?.let {
if (isThirdId) {
it["thirdId"] = "" + mVedioBean!!.thirdId
} else {
it["vedioId"] = "" + mVedioBean!!.vedioId
}
videoPresenter.unlock(it)
}
// 更新解锁集数
for (i in 1 until lockSet) {
val hasUnlockList: MutableList<Int> =
mHasUnlockIndexMap[drama.id] ?: mutableListOf()
hasUnlockList.add(widget.currentDramaIndex + i)
mHasUnlockIndexMap[drama.id] = hasUnlockList
}
mInitUnlockIndex = mUnlockIndexMap[drama.id]!! + lockSet
mUnlockIndexMap[drama.id] = mUnlockIndexMap[drama.id]!! + lockSet
mVedioBean!!.unlockIndex = mInitUnlockIndex
blockView?.visibility = View.GONE
// 播放当前集
mVedioBean!!.seeIndex = mCurrentIndex
mVedioBean!!.orderTags = orderTagsList
LocalVedioManager.commitVedio(mVedioBean!!)
callback?.onDramaRewardArrived() // 解锁当前集
// 更新解锁集数
for (i in 1 until lockSet) {
val hasUnlockList: MutableList<Int> =
mHasUnlockIndexMap[drama.id] ?: mutableListOf()
hasUnlockList.add(widget.currentDramaIndex + i)
mHasUnlockIndexMap[drama.id] = hasUnlockList
}
})
mInitUnlockIndex = mUnlockIndexMap[drama.id]!! + lockSet
mUnlockIndexMap[drama.id] = mUnlockIndexMap[drama.id]!! + lockSet
mVedioBean!!.unlockIndex = mInitUnlockIndex
blockView?.visibility = View.GONE
// 播放当前集
mVedioBean!!.seeIndex = mCurrentIndex
mVedioBean!!.orderTags = orderTagsList
LocalVedioManager.commitVedio(mVedioBean!!)
callback?.onDramaRewardArrived() // 解锁当前集
}
})
}
}
}
......@@ -633,7 +651,7 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
override fun showTurnSuc(data: NineShowBean) {
AppPreferencesManager.get()
.put(Constant.LUCKY_FLAG, data.isShow)
.put(Constant.LUCKY_FLAG, data.isShow)
isLuckyShow = data.isShow
if (isLuckyShow) {
val complete = data.complete
......@@ -641,16 +659,16 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
if (complete >= need) {
tv_lucky_status.text = SpanUtils()
.append("可领取")
.setForegroundColor(resources.getColor(R.color.apk_uninstalled))
.create()
.append("可领取")
.setForegroundColor(resources.getColor(R.color.apk_uninstalled))
.create()
} else {
tv_lucky_status.text = SpanUtils()
.append(complete.toString())
.setForegroundColor(resources.getColor(R.color.red))
.append("/")
.append(need.toString())
.create()
.append(complete.toString())
.setForegroundColor(resources.getColor(R.color.red))
.append("/")
.append(need.toString())
.create()
}
// 匹配
......@@ -672,24 +690,24 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
private fun playCollectAnim(view: LottieAnimationView) {
val lottieDrawable = LottieDrawable()
LottieCompositionFactory.fromAsset(context, "home_collect.json")
.addListener { result: LottieComposition? ->
lottieDrawable.setImagesAssetsFolder("images/")
lottieDrawable.composition = result
lottieDrawable.loop(false)
lottieDrawable.playAnimation()
}
.addListener { result: LottieComposition? ->
lottieDrawable.setImagesAssetsFolder("images/")
lottieDrawable.composition = result
lottieDrawable.loop(false)
lottieDrawable.playAnimation()
}
view.setImageDrawable(lottieDrawable)
}
private fun playCancelCollectAnim(view: LottieAnimationView) {
val lottieDrawable = LottieDrawable()
LottieCompositionFactory.fromAsset(context, "home_cancel_collect.json")
.addListener { result: LottieComposition? ->
lottieDrawable.setImagesAssetsFolder("images/")
lottieDrawable.composition = result
lottieDrawable.loop(false)
lottieDrawable.playAnimation()
}
.addListener { result: LottieComposition? ->
lottieDrawable.setImagesAssetsFolder("images/")
lottieDrawable.composition = result
lottieDrawable.loop(false)
lottieDrawable.playAnimation()
}
view.setImageDrawable(lottieDrawable)
}
......@@ -722,15 +740,15 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
private fun showVipCountDialog(position: Int) {
if (position == 0 || mVedioBean!!.tipMaxIndex == 0 || mVedioBean!!.tipMaxIndex - 1 < position) return
VipCountDialog(this, mVedioBean!!, tipList)
.setOnDialogDismiss(object : VipCountDialog.OnDialogDismiss {
override fun onDialogDismiss() {}
})
.show()
.setOnDialogDismiss(object : VipCountDialog.OnDialogDismiss {
override fun onDialogDismiss() {}
})
.show()
}
private fun localShowLucky(position: Int) {
val localLucky = AppPreferencesManager.get()
.getBoolean(Constant.LUCKY_FLAG, false)
.getBoolean(Constant.LUCKY_FLAG, false)
if (mVedioBean != null && (isLuckyShow || localLucky)) {
if (position > mVedioBean!!.unlockIndex - 1) {
// 解锁界面
......@@ -739,7 +757,13 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
// 超过免费剧
if (position >= mVedioBean!!.freeIndex) {
ll_lucky.visibility = View.VISIBLE
context?.let { GlideUtils.loadRoundImageViewGif(it, R.drawable.ic_nine, iv_lucky_gif) }
context?.let {
GlideUtils.loadRoundImageViewGif(
it,
R.drawable.ic_nine,
iv_lucky_gif
)
}
} else {
ll_lucky.visibility = View.GONE
}
......@@ -750,20 +774,20 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
private fun setCollectImage(view: LottieAnimationView) {
val lottieDrawable = LottieDrawable()
LottieCompositionFactory.fromAsset(context, "home_collect.json")
.addListener { result: LottieComposition? ->
lottieDrawable.setImagesAssetsFolder("images/")
lottieDrawable.composition = result
}
.addListener { result: LottieComposition? ->
lottieDrawable.setImagesAssetsFolder("images/")
lottieDrawable.composition = result
}
view.setImageDrawable(lottieDrawable)
}
private fun setCancelCollectImage(view: LottieAnimationView) {
val lottieDrawable = LottieDrawable()
LottieCompositionFactory.fromAsset(context, "home_cancel_collect.json")
.addListener { result: LottieComposition? ->
lottieDrawable.setImagesAssetsFolder("images/")
lottieDrawable.composition = result
}
.addListener { result: LottieComposition? ->
lottieDrawable.setImagesAssetsFolder("images/")
lottieDrawable.composition = result
}
view.setImageDrawable(lottieDrawable)
}
......@@ -837,4 +861,106 @@ class DramaApiDetailActivity : BaseActivity(), VideoEpisodeAdapter.OnEpisodeClic
})
}
private fun adDialog() {
detailAdDialog = DetailAdDialog(context, object : DialogListener() {
override fun onClick(v: View) {
// if (AntiShake.check(v.id)) return
when (v.id) {
R.id.iv_detail_ad_next -> {
val carrierType = Constant.CARRIERTYPE_CSJ_VEDIO
AdManager.instance.showAd(this@DramaApiDetailActivity, carrierType,
object : AdStatusListener {
var canFail = false
override fun adSuccess() {
canFail = true
}
override fun adFail() {
if (canFail) return
NoPreAdManager.loadVideoAd(
this@DramaApiDetailActivity,
carrierType, object : AdStatusListener {
override fun adFail() {
showToast("广告太火爆了,请稍候再试")
}
override fun adSuccess() {
}
override fun adClose(vo: HashMap<String, Any>?) {
vo?.let {
if (isThirdId) {
it["thirdId"] = "" + mVedioBean!!.thirdId
} else {
it["vedioId"] = "" + mVedioBean!!.vedioId
}
videoPresenter.unlock(it)
}
// 更新解锁集数
for (i in 1 until lockSet) {
val hasUnlockList: MutableList<Int> =
mHasUnlockIndexMap[drama?.id]
?: mutableListOf()
hasUnlockList.add(currentDramaIndex + i)
mHasUnlockIndexMap[drama!!.id] = hasUnlockList
}
mInitUnlockIndex =
mUnlockIndexMap[drama?.id]!! + lockSet
mUnlockIndexMap[drama!!.id] =
mUnlockIndexMap[drama!!.id]!! + lockSet
mVedioBean!!.unlockIndex = mInitUnlockIndex
// 播放当前集
mVedioBean!!.seeIndex = mCurrentIndex
mVedioBean!!.orderTags = orderTagsList
LocalVedioManager.commitVedio(mVedioBean!!)
blockView?.visibility = View.GONE
unlockCallback?.onDramaRewardArrived() // 解锁当前集
}
})
}
override fun adClose(vo: HashMap<String, Any>?) {
vo?.let {
if (isThirdId) {
it["thirdId"] = "" + mVedioBean!!.thirdId
} else {
it["vedioId"] = "" + mVedioBean!!.vedioId
}
videoPresenter.unlock(it)
}
// 更新解锁集数
for (i in 1 until lockSet) {
val hasUnlockList: MutableList<Int> =
mHasUnlockIndexMap[drama!!.id] ?: mutableListOf()
hasUnlockList.add(currentDramaIndex + i)
mHasUnlockIndexMap[drama!!.id] = hasUnlockList
}
mInitUnlockIndex = mUnlockIndexMap[drama!!.id]!! + lockSet
mUnlockIndexMap[drama!!.id] =
mUnlockIndexMap[drama!!.id]!! + lockSet
mVedioBean!!.unlockIndex = mInitUnlockIndex
blockView?.visibility = View.GONE
// 播放当前集
mVedioBean!!.seeIndex = mCurrentIndex
mVedioBean!!.orderTags = orderTagsList
LocalVedioManager.commitVedio(mVedioBean!!)
unlockCallback?.onDramaRewardArrived() // 解锁当前集
}
})
detailAdDialog?.dismiss()
}
}
}
})
detailAdDialog!!.show()
}
}
\ No newline at end of file
......@@ -94,7 +94,7 @@ class TxVideoActivity : BaseActivity(), View.OnClickListener, VideoView,
}
// vip界面返回弹出广告弹窗
if (AppConfig.showVipAdDialog) {
if (AppConfig.showVipAdDialog && !UserManager.getInstance().vipFlag) {
Handler(Looper.getMainLooper()).postDelayed({
adDialog()
AppConfig.showVipAdDialog = false
......
......@@ -2,6 +2,8 @@ package com.duben.xixiplaylet.video.tx.newrecommend
import android.app.Dialog
import android.os.Bundle
import android.os.Handler
import android.os.Looper
import android.view.View
import androidx.core.content.ContextCompat
import com.google.gson.Gson
......@@ -27,6 +29,7 @@ import com.duben.xixiplaylet.video.tx.VideoModel
import com.duben.library.utils.GlideUtils
import com.duben.library.utils.nodoubleclick.AntiShake
import com.duben.xixiplaylet.common.AppConfig
import com.duben.xixiplaylet.ui.widgets.DetailAdDialog
import com.duben.xixiplaylet.ui.widgets.DialogListener
import com.duben.xixiplaylet.ui.widgets.VideoEpisodeDialog
import kotlinx.android.synthetic.main.activity_new_tx_video.*
......@@ -42,6 +45,7 @@ class NewTxVideoActivity : BaseActivity(), View.OnClickListener, VideoView,
private var mAllData = arrayListOf<VedioEpisodeBean>()
private var dialog: VideoEpisodeDialog? = null
private var detailAdDialog: DetailAdDialog? = null
private val videoPresenter by lazy { VideoPresenter() }
......@@ -81,6 +85,14 @@ class NewTxVideoActivity : BaseActivity(), View.OnClickListener, VideoView,
playIndex = new_super_short_video_view.currentPosition
mVedioBean?.let { videoPresenter.getIndexList("" + it.vedioId) }
}
// vip界面返回弹出广告弹窗
if (AppConfig.showVipAdDialog && !UserManager.getInstance().vipFlag) {
Handler(Looper.getMainLooper()).postDelayed({
adDialog()
AppConfig.showVipAdDialog = false
}, 300)
}
}
override fun onPause() {
......@@ -285,37 +297,7 @@ class NewTxVideoActivity : BaseActivity(), View.OnClickListener, VideoView,
}
R.id.unlock -> {
// 看广告解锁
val carrierType = Constant.CARRIERTYPE_TX_VEDIO
AdManager.instance.showAd(this, carrierType,
object : AdStatusListener {
var canFail = false
override fun adSuccess() {
canFail = true
}
override fun adFail() {
if (canFail) return
NoPreAdManager.loadVideoAd(
this@NewTxVideoActivity,
carrierType, object : AdStatusListener {
override fun adFail() {
showToast("广告太火爆了,请稍候再试")
}
override fun adSuccess() {
}
override fun adClose(vo: HashMap<String, Any>?) {
updateEpisodeData(position, vo)
}
})
}
override fun adClose(vo: HashMap<String, Any>?) {
updateEpisodeData(position, vo)
}
})
showAd()
}
R.id.vip -> {
// 开通VIP
......@@ -323,6 +305,7 @@ class NewTxVideoActivity : BaseActivity(), View.OnClickListener, VideoView,
bundle.putString(VipActivity.VEDIO_ID, mVedioBean!!.vedioId.toString())
bundle.putString(VipActivity.THIRD_ID, mVedioBean!!.thirdId)
bundle.putBoolean(VipActivity.IS_RECOMMEND, true)
bundle.putBoolean(VipActivity.IS_DETAIL, true)
readyGo(VipActivity::class.java, bundle)
}
......@@ -330,6 +313,40 @@ class NewTxVideoActivity : BaseActivity(), View.OnClickListener, VideoView,
}
}
private fun showAd() {
val carrierType = Constant.CARRIERTYPE_TX_VEDIO
AdManager.instance.showAd(this, carrierType,
object : AdStatusListener {
var canFail = false
override fun adSuccess() {
canFail = true
}
override fun adFail() {
if (canFail) return
NoPreAdManager.loadVideoAd(
this@NewTxVideoActivity,
carrierType, object : AdStatusListener {
override fun adFail() {
showToast("广告太火爆了,请稍候再试")
}
override fun adSuccess() {
}
override fun adClose(vo: HashMap<String, Any>?) {
updateEpisodeData(position, vo)
}
})
}
override fun adClose(vo: HashMap<String, Any>?) {
updateEpisodeData(position, vo)
}
})
}
private fun updateEpisodeData(position: Int, vo: HashMap<String, Any>?) {
vo?.let {
// 解锁剧集
......@@ -358,4 +375,20 @@ class NewTxVideoActivity : BaseActivity(), View.OnClickListener, VideoView,
}
return readPosition
}
private fun adDialog() {
detailAdDialog = DetailAdDialog(context, object : DialogListener() {
override fun onClick(v: View) {
if (AntiShake.check(v.id)) return
when (v.id) {
R.id.iv_detail_ad_next -> {
showAd()
detailAdDialog?.dismiss()
}
}
}
})
detailAdDialog!!.show()
}
}
\ No newline at end of file
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