[3.0.0]
[广告视频从json配置文件获取视频]
This commit is contained in:
yangyakun
2023-04-07 20:59:34 +08:00
parent 429de28e85
commit 7f67ea9027
13 changed files with 263 additions and 287 deletions

View File

@@ -0,0 +1,10 @@
package com.mogo.och.common.module.wigets.video
data class AdsDatas(val ads:MutableList<RotationItem>)
data class RotationItem(
var path: String,
var type: Int,
var cacheImgPath: String,
var title: String
)

View File

@@ -2,7 +2,6 @@ package com.mogo.och.common.module.wigets.video
import AdvancePagerAdapter
import AdvanceViewPager
import RotationItem
import android.annotation.SuppressLint
import android.content.Context
import android.util.AttributeSet

View File

@@ -1,8 +1,10 @@
package com.mogo.och.common.module.wigets.video
import RotationItem
import com.google.gson.reflect.TypeToken
import com.mogo.commons.mvp.MvpFragment
import com.mogo.commons.mvp.Presenter
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.och.common.module.R
import kotlinx.android.synthetic.main.fragment_video_player.*
@@ -47,87 +49,12 @@ class VideoPlayerFragment :
}
private fun initResourceData() {
arrayListOf.clear()
arrayListOf.add(
RotationItem(
"https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357256102/1.jpg",
0,
"",
"1"
)
)
arrayListOf.add(
RotationItem(
"https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357382357/2.png",
0,
"",
"2"
)
)
arrayListOf.add(
RotationItem(
"https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357557335/3.mp4",
1,
"https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357382357/2.png",
"3"
)
)
arrayListOf.add(
RotationItem(
"https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357598483/4.jpg",
0,
"",
"4"
)
)
arrayListOf.add(
RotationItem(
"https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357834634/5.m4v",
1,
"https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357598483/4.jpg",
"5"
)
)
arrayListOf.add(
RotationItem(
"https://img.zhidaohulian.com/fileServer/online_car_hailing/1676358660379/6.m4v",
1,
"https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357598483/4.jpg",
"6"
)
)
arrayListOf.add(
RotationItem(
"https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360154589/7.jpg",
0,
"",
"7"
)
)
arrayListOf.add(
RotationItem(
"https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360185500/8.jpg",
0,
"",
"8"
)
)
arrayListOf.add(
RotationItem(
"https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360224773/9.png",
0,
"",
"9"
)
)
arrayListOf.add(
RotationItem(
"https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360274126/10.mp4",
1,
"https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360224773/9.png",
"10"
)
)
try {
arrayListOf.clear()
var datas: AdsDatas = GsonUtils.fromJson(FunctionBuildConfig.tempConfig,object : TypeToken<AdsDatas>() {}.type)
arrayListOf.addAll(datas.ads)
} catch (e: Exception) {
}
}
}

View File

@@ -24,6 +24,7 @@ import com.mogo.eagle.core.utilcode.util.ThreadUtils
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.common.module.R
import com.mogo.och.common.module.wigets.video.ImageVideoRotationView
import com.mogo.och.common.module.wigets.video.RotationItem
import com.shuyu.gsyvideoplayer.builder.GSYVideoOptionBuilder
import com.shuyu.gsyvideoplayer.listener.GSYSampleCallBack
import com.shuyu.gsyvideoplayer.utils.Debuger
@@ -456,13 +457,6 @@ class AdvancePagerAdapter(context: Context, viewPager: ViewPager) : PagerAdapter
}
}
data class RotationItem(
var path: String,
var type: Int,
var cacheImgPath: String,
var title: String
)
class AdvanceImageView @JvmOverloads constructor(
context: Context, attrs: AttributeSet? = null
) : RelativeLayout(context, attrs) {

View File

@@ -1,9 +1,13 @@
package com.mogo.och.bus.passenger.ui.video
import com.google.gson.reflect.TypeToken
import com.mogo.commons.mvp.MvpFragment
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.och.bus.passenger.R
import com.mogo.och.bus.passenger.presenter.PM2VideoPresenter
import com.mogo.och.bus.passenger.ui.widget.video.RotationItem
import com.mogo.och.common.module.wigets.video.AdsDatas
import com.mogo.och.common.module.wigets.video.RotationItem
import kotlinx.android.synthetic.m2.p_m2_video_fragment.*
/**
@@ -48,187 +52,13 @@ class PM2VideoFragment :
}
private fun initResourceData() {
arrayListOf.clear()
arrayListOf.add(
RotationItem(
"https://img.zhidaohulian.com/fileServer/online_car_hailing/1678946244305/dalim2.mp4",
1,
"",
"1"
)
)
// if (BuildConfig.FLAVOR.contains("dali")){ //大理 目前还都使用的mogo 的cos https://img.zhidaohulian.com/fileServer/online_car_hailing/1678932482045/1080%2A565%20.mp4
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1678932482045/1080%2A565%20.mp4",
// 1,
// "",
// "1"
// )
// )
// }else if (BuildConfig.FLAVOR.contains("yantai")){ //烟台
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357256102/1.jpg",
// 0,
// "",
// "1"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357382357/2.png",
// 0,
// "",
// "2"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357557335/3.mp4",
// 1,
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357382357/2.png",
// "3"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357598483/4.jpg",
// 0,
// "",
// "4"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357834634/5.m4v",
// 1,
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357598483/4.jpg",
// "5"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676358660379/6.m4v",
// 1,
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357598483/4.jpg",
// "6"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360154589/7.jpg",
// 0,
// "",
// "7"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360185500/8.jpg",
// 0,
// "",
// "8"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360224773/9.png",
// 0,
// "",
// "9"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360274126/10.mp4",
// 1,
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360224773/9.png",
// "10"
// )
// )
// }else{ // mogo
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357256102/1.jpg",
// 0,
// "",
// "1"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357382357/2.png",
// 0,
// "",
// "2"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357557335/3.mp4",
// 1,
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357382357/2.png",
// "3"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357598483/4.jpg",
// 0,
// "",
// "4"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357834634/5.m4v",
// 1,
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357598483/4.jpg",
// "5"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676358660379/6.m4v",
// 1,
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357598483/4.jpg",
// "6"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360154589/7.jpg",
// 0,
// "",
// "7"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360185500/8.jpg",
// 0,
// "",
// "8"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360224773/9.png",
// 0,
// "",
// "9"
// )
// )
// arrayListOf.add(
// RotationItem(
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360274126/10.mp4",
// 1,
// "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360224773/9.png",
// "10"
// )
// )
// }
//
try {
arrayListOf.clear()
var datas: AdsDatas = GsonUtils.fromJson(FunctionBuildConfig.tempConfig,object : TypeToken<AdsDatas>() {}.type)
arrayListOf.addAll(datas.ads)
} catch (e: Exception) {
e.printStackTrace()
}
}
}

View File

@@ -9,7 +9,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
import com.mogo.eagle.core.utilcode.mogo.logger.Logger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.eagle.core.utilcode.util.CountDownTimer
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.common.module.wigets.video.RotationItem
import com.shuyu.gsyvideoplayer.listener.GSYSampleCallBack
/**

View File

@@ -5,6 +5,8 @@ import android.content.Context
import android.util.AttributeSet
import android.widget.RelativeLayout
import androidx.viewpager.widget.ViewPager
import com.mogo.och.common.module.wigets.video.RotationItem
/**
* @author: wangmingjun
* @date: 2023/2/6

View File

@@ -1,12 +0,0 @@
package com.mogo.och.bus.passenger.ui.widget.video
/**
* @author: wangmingjun
* @date: 2023/2/6
* type:0 图片
* type:1 视频
*/
data class RotationItem(var path: String,
var type: Int,
var cacheImgPath: String,
var title: String)

View File

@@ -228,15 +228,18 @@ android {
mogo {
dimension "project"
buildConfigField 'String', 'URLs', "\"${readFileToJson("mogo").replace("\"", "\\\"")}\""
buildConfigField 'String', 'tempConfig', "\"${readFileToJsonTemp("mogo").replace("\"", "\\\"")}\""
}
yantai {
dimension "project"
buildConfigField 'String', 'URLs', "\"${readFileToJson("yantai").replace("\"", "\\\"")}\""
buildConfigField 'String', 'tempConfig', "\"${readFileToJsonTemp("yantai").replace("\"", "\\\"")}\""
}
dali {
dimension "project"
buildConfigField 'String', 'URLs', "\"${readFileToJson("dali").replace("\"", "\\\"")}\""
buildConfigField 'String', 'tempConfig', "\"${readFileToJsonTemp("dali").replace("\"", "\\\"")}\""
}
// 空业务 主要是给鹰眼使用
@@ -461,7 +464,7 @@ boolean isReleaseBuild() {
Object readFileToJson(env){
try {
// 加载config.json 文件
File file = new File("${rootDir}/app/urlConfig.json")
File file = new File("${rootDir}/app/config/urlConfig.json")
def jsonSlurper = new JsonSlurper()
// 解析json
def config = jsonSlurper.parse(file)
@@ -511,3 +514,38 @@ def variantName() {
}
Object readFileToJsonTemp(env){
try {
// 加载config.json 文件
File file = new File("${rootDir}/app/config/tempConfig.json")
def jsonSlurper = new JsonSlurper()
// 解析json
def config = jsonSlurper.parse(file)
def flavorNames = variantVehicleName()
def jsonOutput = new JsonOutput()
def getKey = flavorNames
config.get(env).each {key, value ->
// 匹配flavor对应的 json
if(flavorNames.toLowerCase().contains(key)){
getKey = key
return true
}
}
return jsonOutput.toJson(config.get(env).get(getKey))
} catch (IOException e) {
e.printStackTrace()
}
return null
}
def variantVehicleName() {
if(gradle.startParameter.taskNames.size()>0) {
for (String taskName : gradle.startParameter.taskNames) {
if (taskName.contains("Debug") | taskName.contains("Release")) {
return taskName
}
}
}
return "buspassenger"
}

176
app/config/tempConfig.json Normal file
View File

@@ -0,0 +1,176 @@
{
"mogo": {
"shuttlepassenger": {
"ads": [
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357256102/1.jpg",
"type": 0,
"cacheImgPath": "",
"title": "1"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357382357/2.png",
"type": 0,
"cacheImgPath": "",
"title": "2"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357557335/3.mp4",
"type": 1,
"cacheImgPath": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357382357/2.png",
"title": "3"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357598483/4.jpg",
"type": 0,
"cacheImgPath": "",
"title": "4"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357834634/5.m4v",
"type": 0,
"cacheImgPath": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357598483/4.jpg",
"title": "5"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676358660379/6.m4v",
"type": 1,
"cacheImgPath": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357598483/4.jpg",
"title": "6"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360154589/7.jpg",
"type": 0,
"cacheImgPath": "",
"title": "7"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360185500/8.jpg",
"type": 0,
"cacheImgPath": "",
"title": "8"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360224773/9.png",
"type": 0,
"cacheImgPath": "",
"title": "9"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360274126/10.mp4",
"type": 1,
"cacheImgPath": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360224773/9.png",
"title": "10"
}
]
},
"shuttlepassengerm2": {
"ads": [
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1678946244305/dalim2.mp4",
"type": 1,
"cacheImgPath": "",
"title": "1"
}
]
}
},
"dali": {
"shuttlepassenger": {
"ads": [
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357256102/1.jpg",
"type": 0,
"cacheImgPath": "",
"title": "1"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357382357/2.png",
"type": 0,
"cacheImgPath": "",
"title": "2"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357557335/3.mp4",
"type": 1,
"cacheImgPath": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357382357/2.png",
"title": "3"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357598483/4.jpg",
"type": 0,
"cacheImgPath": "",
"title": "4"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357834634/5.m4v",
"type": 0,
"cacheImgPath": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357598483/4.jpg",
"title": "5"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676358660379/6.m4v",
"type": 1,
"cacheImgPath": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357598483/4.jpg",
"title": "6"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360154589/7.jpg",
"type": 0,
"cacheImgPath": "",
"title": "7"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360185500/8.jpg",
"type": 0,
"cacheImgPath": "",
"title": "8"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360224773/9.png",
"type": 0,
"cacheImgPath": "",
"title": "9"
},
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360274126/10.mp4",
"type": 1,
"cacheImgPath": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676360224773/9.png",
"title": "10"
}
]
},
"shuttlepassengerm2": {
"ads": [
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1678946244305/dalim2.mp4",
"type": 1,
"cacheImgPath": "",
"title": "1"
}
]
}
},
"yantai": {
"shuttlepassenger": {
"ads": [
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1680774790614/yangmadao_photo.jpg",
"type": 1,
"cacheImgPath": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1680774847276/yangmadao_video.mp4",
"title": "1"
}
]
},
"shuttlepassengerm2": {
"ads": [
{
"path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1678946244305/dalim2.mp4",
"type": 1,
"cacheImgPath": "",
"title": "1"
}
]
}
}
}

View File

@@ -46,6 +46,8 @@ object ConfigStartUp {
FunctionBuildConfig.urlJson = GsonUtils.fromJson(BuildConfig.URLs, UrlConfig::class.java)
//不能启动自动驾驶的档位
FunctionBuildConfig.unableLaunchAutopilotGear = BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR
// 临时配置json
FunctionBuildConfig.tempConfig = BuildConfig.tempConfig
// // 这里影响当前Activity的身份信息多进程先保持与原来一样主进程为司机端:passenger 进程为乘客端 TODO 暂时不启用,仅做洱海交付,独立乘客屏+宣传视频
// if (ProcessUtils.getCurrentProcessName().contains(":passenger")) {

View File

@@ -105,6 +105,16 @@ object FunctionBuildConfig {
@JvmField
var appIdentityMode = "Taxi_Driver_Base"
/**
* 临时配置json
* 广告json
*
*/
@Volatile
@JvmField
var tempConfig = ""
/**
* 配置连接工控机的IP地址
* 小巴车 192.168.8.102