Commit 7467ec0e authored by mengcuiguang's avatar mengcuiguang

Merge branch 'dev_new_vedio' of http://gitlab.mints-id.com/android/android_vedio into dev_new_vedio

parents e611b1d6 b3b9e9e7
......@@ -19,6 +19,7 @@ import com.mints.wisdomclean.video.DPHolderManager;
import java.util.HashMap;
import java.util.Map;
import java.util.logging.Handler;
/**
* 穿山甲广告
......@@ -46,9 +47,6 @@ public class TTGroMoreAdManagerHolder {
if (!sInit) {
GMMediationAdSdk.initialize(context, buildV2Config(context));
sInit = true;
// 初始化短剧SDK
DPHolderManager.INSTANCE.initDpSdk(context);
}
}
......
......@@ -4,10 +4,14 @@ import android.app.Activity
import android.content.Intent
import android.os.Bundle
import android.text.TextUtils
import com.bytedance.sdk.dp.DPDrama
import com.bytedance.sdk.dp.DPSdk
import com.bytedance.sdk.dp.IDPWidgetFactory
import com.mints.library.utils.json.JsonUtil
import com.mints.wisdomclean.common.Constant
import com.mints.wisdomclean.mvp.model.VedioBean
import com.mints.wisdomclean.utils.AppPreferencesManager
import com.mints.wisdomclean.utils.ToastUtil
import com.mints.wisdomclean.video.DramaApiDetailActivity
import com.mints.wisdomclean.video.VideoActivity
......@@ -79,14 +83,44 @@ object LocalVedioManager {
* 根据类型跳转对应视频详情页 [自有或穿山甲]
*/
fun startVedioDetailActivityForType(activity: Activity, data: VedioBean?) {
val bundle = Bundle()
bundle.putString(Constant.VEDIO_BEAN, JsonUtil.toJson(data))
if (data?.createType == 1) {
//自有短剧
val bundle = Bundle()
bundle.putString(Constant.VEDIO_BEAN, JsonUtil.toJson(data))
readyGo(activity, VideoActivity::class.java, bundle)
} else {
//穿山甲短剧
readyGo(activity, DramaApiDetailActivity::class.java, bundle)
requestDrama(activity, data)
}
}
// 请求穿山甲数据
private fun requestDrama(activity: Activity, data: VedioBean?) {
if (DPSdk.isStartSuccess() && data != null) {
DPSdk.factory().requestDrama(
arrayListOf(data.vedioId.toLong()), object : IDPWidgetFactory.DramaCallback {
override fun onError(p0: Int, p1: String?) {
ToastUtil.show(activity, "网络错误!")
}
override fun onSuccess(
dataList: MutableList<out DPDrama>?,
info: MutableMap<String, Any>?
) {
dataList?.takeIf { it.isNotEmpty() }?.first()?.let {
DramaApiDetailActivity.outerDrama = it
//穿山甲短剧
val bundle = Bundle()
bundle.putString(Constant.VEDIO_BEAN, JsonUtil.toJson(data))
readyGo(activity, DramaApiDetailActivity::class.java, bundle)
}
}
}
)
} else {
ToastUtil.show(activity, "网络错误!")
}
}
......
......@@ -22,6 +22,20 @@ public class VedioBean implements Serializable {
private String scriptAuthor;
private int vedioId;// 视频id,服务器标识
private String hot;// 播放量
private int adGiveVedioNum;// 广告解锁数量
public int getAdGiveVedioNum() {
return adGiveVedioNum;
}
public void setAdGiveVedioNum(int adGiveVedioNum) {
this.adGiveVedioNum = adGiveVedioNum;
}
public void setHot(String hot) {
this.hot = hot;
}
public String getThirdId() {
return thirdId;
}
......
......@@ -27,6 +27,7 @@ import com.mints.wisdomclean.ui.fragment.MyFragment
import com.mints.wisdomclean.ui.fragment.RecommendFragment
import com.mints.wisdomclean.ui.widgets.DialogListener
import com.mints.wisdomclean.ui.widgets.PhoneDialog
import com.mints.wisdomclean.video.DPHolderManager
import kotlinx.android.synthetic.main.activity_main.*
/**
......@@ -86,6 +87,9 @@ class MainActivity : BaseActivity(), View.OnClickListener {
AdManager.instance.preLoadAd(this)
initEditView()
// 初始化短剧SDK
DPHolderManager.initDpSdk(context);
// initEasyFloat()
}
......
......@@ -11,7 +11,7 @@ import com.google.android.material.tabs.TabLayout
import com.google.android.material.tabs.TabLayoutMediator
import com.mints.wisdomclean.R
import com.mints.wisdomclean.mvp.model.EpisodeBean
import com.mints.wisdomclean.mvp.model.IndexList
import com.mints.wisdomclean.mvp.model.VedioBean
import com.mints.wisdomclean.ui.adapter.VideoEpisodeAdapter
import com.mints.wisdomclean.utils.CommonUtils
......@@ -22,7 +22,7 @@ import com.mints.wisdomclean.utils.CommonUtils
*/
class VideoEpisodeDialog(
context: Context,
val indexList: IndexList?,
val vedioBean: VedioBean?,
private val listener: DialogListener
) :
Dialog(context, R.style.dialog) {
......@@ -61,22 +61,21 @@ class VideoEpisodeDialog(
ivClose = findViewById(R.id.close_iv)
ivClose.setOnClickListener(listener)
findViewById<TextView>(R.id.title_tv).text = indexList?.vedioMsg?.title
findViewById<TextView>(R.id.title_tv).text = vedioBean?.title
findViewById<TextView>(R.id.label_tv).text =
if (indexList?.vedioMsg?.completeStatus == 0) "已完结" else "未完结"
if (vedioBean?.completeStatus == 0) "已完结" else "未完结"
initVp()
}
private fun initVp() {
for (i in 0 until indexList!!.vedioMsg.vedioTotal) {
if (i < indexList.list.size) {
val index = indexList.list[i]
for (i in 0 until vedioBean!!.vedioTotal) {
if (i < vedioBean.unlockIndex) {
var playing = false
if (indexList.vedioMsg.seeIndex == i) {
if (vedioBean.seeIndex == i) {
playing = true
}
mData.add(EpisodeBean(index.isLock, playing, "" + (i + 1)))
mData.add(EpisodeBean(false, playing, "" + (i + 1)))
} else {
mData.add(EpisodeBean(lock = true, playing = false, title = "" + (i + 1)))
}
......
......@@ -13,7 +13,6 @@ import com.bytedance.sdk.dp.IDPDrawListener
import com.bytedance.sdk.dp.IDPWidget
import com.mints.wisdomclean.R
import com.mints.wisdomclean.ui.fragment.base.BaseFragment
import com.mints.wisdomclean.video.DramaApiDetailActivity.Companion.KEY_DRAMA_UNLOCK_INDEX
/**
* Created by limingqi on 2023/5/10
......@@ -93,7 +92,6 @@ class DrawDramaFragment : BaseFragment() {
val intent = Intent(context, DramaApiDetailActivity::class.java)
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
DramaApiDetailActivity.outerDrama = drama
intent.putExtra(KEY_DRAMA_UNLOCK_INDEX, 100)
context.startActivity(intent)
}
.freeSet(FREE_SET)
......
......@@ -203,13 +203,12 @@ class VideoActivity : BaseActivity(), View.OnClickListener, VideoView,
dialog?.setCurrentIndex(mCurrentPosition)
dialog!!.show()
} else {
dialog = VideoEpisodeDialog(this,
indexBean!!, object : DialogListener() {
override fun onClick(dialog: Dialog?, v: View?) {
super.onClick(dialog, v)
dialog?.dismiss()
}
})
dialog = VideoEpisodeDialog(this, mVedioBean, object : DialogListener() {
override fun onClick(dialog: Dialog?, v: View?) {
super.onClick(dialog, v)
dialog?.dismiss()
}
})
dialog?.setCurrentIndex(mCurrentPosition)
dialog?.setOnEpisodeClickListener(this)
dialog?.show()
......
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
android:layout_height="match_parent"
android:background="#77090909">
<FrameLayout
android:id="@+id/fl_container"
......@@ -9,6 +11,76 @@
android:layout_height="match_parent"
android:layout_marginBottom="50dp" />
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/ll"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="15dp"
android:layout_marginBottom="100dp"
android:orientation="vertical"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent">
<TextView
android:id="@+id/title_tv"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:ellipsize="end"
android:gravity="center"
android:maxEms="9"
android:maxLines="1"
android:text="-"
android:textColor="#fff"
android:textSize="16sp" />
<TextView
android:id="@+id/info_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="end"
android:maxEms="14"
android:maxLines="3"
android:text="-"
android:textColor="#fff"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_collect"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="15dp"
android:gravity="center"
android:orientation="vertical"
app:layout_constraintBottom_toTopOf="@id/ll"
app:layout_constraintRight_toRightOf="parent">
<com.airbnb.lottie.LottieAnimationView
android:id="@+id/zan_iv"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_marginTop="10dp"
android:src="@mipmap/home_collect_img_0" />
<TextView
android:id="@+id/zan_num_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="-"
android:textColor="#fff"
android:textSize="14sp" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
<FrameLayout
android:id="@+id/fm_bottom"
android:layout_width="match_parent"
......@@ -51,22 +123,60 @@
</FrameLayout>
<LinearLayout
<FrameLayout
android:id="@+id/block_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
android:layout_marginBottom="50dp"
android:background="#99000000">
<ImageView
android:id="@+id/iv_bg"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<TextView
android:id="@+id/tv_info"
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:text="试看已结束"
android:textColor="@color/white"
android:textSize="16sp" />
<Button
android:id="@+id/unlock"
android:layout_width="280dp"
android:layout_height="40dp"
android:layout_marginBottom="10dp"
android:background="@drawable/shape_red"
android:text="看广告解锁1集"
android:textColor="@color/white" />
<Button
android:id="@+id/vip"
android:layout_width="280dp"
android:layout_height="40dp"
android:background="@drawable/shape_green"
android:text="开通会员"
android:textColor="@color/white" />
</LinearLayout>
<ImageView
android:id="@+id/leave"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="10dp"
android:textColor="#FFFFFFFF"
android:textSize="16sp" />
android:layout_marginTop="20dp"
android:padding="10dp"
android:src="@mipmap/ic_arrow_white" />
</LinearLayout>
</FrameLayout>
<include layout="@layout/item_block_view" />
</FrameLayout>
\ 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