feat ; 预加载 麦位资源
This commit is contained in:
@@ -1,11 +1,21 @@
|
|||||||
package com.chwl.app.utils
|
package com.chwl.app.utils
|
||||||
|
|
||||||
|
import com.bumptech.glide.load.DataSource
|
||||||
|
import com.bumptech.glide.load.engine.GlideException
|
||||||
|
import com.bumptech.glide.request.RequestListener
|
||||||
|
import com.bumptech.glide.request.target.Target
|
||||||
import com.chwl.core.gift.bean.RoomMicDress
|
import com.chwl.core.gift.bean.RoomMicDress
|
||||||
import com.chwl.core.home.bean.ClientResource
|
import com.chwl.core.home.bean.ClientResource
|
||||||
import com.chwl.core.initial.InitialModel
|
import com.chwl.core.initial.InitialModel
|
||||||
import com.chwl.core.manager.AvRoomDataManager
|
import com.chwl.core.manager.AvRoomDataManager
|
||||||
|
import com.chwl.library.common.glide.GlideUtils
|
||||||
import com.chwl.library.common.util.doLog
|
import com.chwl.library.common.util.doLog
|
||||||
import com.chwl.library.common.util.isVerify
|
import com.chwl.library.common.util.isVerify
|
||||||
|
import com.example.lib_utils.AppUtils
|
||||||
|
import kotlinx.coroutines.GlobalScope
|
||||||
|
import kotlinx.coroutines.delay
|
||||||
|
import kotlinx.coroutines.launch
|
||||||
|
import java.io.File
|
||||||
|
|
||||||
object ResourceManager {
|
object ResourceManager {
|
||||||
|
|
||||||
@@ -15,6 +25,7 @@ object ResourceManager {
|
|||||||
InitialModel.get().clientResource().doOnSuccess {
|
InitialModel.get().clientResource().doOnSuccess {
|
||||||
"data = $it".doLog()
|
"data = $it".doLog()
|
||||||
mClientResource = it
|
mClientResource = it
|
||||||
|
preLoad(it)
|
||||||
}.subscribe()
|
}.subscribe()
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -47,4 +58,44 @@ object ResourceManager {
|
|||||||
}
|
}
|
||||||
return data
|
return data
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun preLoad(clientResource: ClientResource) {
|
||||||
|
GlobalScope.launch {
|
||||||
|
clientResource?.roomMicDressList?.forEach {
|
||||||
|
delay(500)
|
||||||
|
doLoad(it.normalMicLockUrl)
|
||||||
|
doLoad(it.normalMicLockUrl)
|
||||||
|
doLoad(it.bossMicUrl)
|
||||||
|
doLoad(it.bossMicLockUrl)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun doLoad(url: String) {
|
||||||
|
if (url.isVerify()) {
|
||||||
|
"预加载 -> ResourceManager doLoad url = $url".doLog()
|
||||||
|
GlideUtils.instance().downloadFromUrl2(AppUtils.getApp(),url,object : RequestListener<File?> {
|
||||||
|
override fun onLoadFailed(
|
||||||
|
e: GlideException?,
|
||||||
|
model: Any?,
|
||||||
|
target: Target<File?>?,
|
||||||
|
isFirstResource: Boolean
|
||||||
|
): Boolean {
|
||||||
|
"预加载 -> ResourceManager onLoadFailed error = ${e?.message} url = $url".doLog()
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun onResourceReady(
|
||||||
|
resource: File?,
|
||||||
|
model: Any?,
|
||||||
|
target: Target<File?>?,
|
||||||
|
dataSource: DataSource?,
|
||||||
|
isFirstResource: Boolean
|
||||||
|
): Boolean {
|
||||||
|
"预加载 -> ResourceManager onResourceReady Success url = $url".doLog()
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
14
mode.json
14
mode.json
@@ -2,13 +2,7 @@
|
|||||||
"code": 200,
|
"code": 200,
|
||||||
"message": "success",
|
"message": "success",
|
||||||
"data": {
|
"data": {
|
||||||
"roomVal": 60936.5,
|
"roomMicDressList": [
|
||||||
"currentLevelIcon": "https://image.pekolive.com/3room_lv.png",
|
|
||||||
"currentLevel": 3,
|
|
||||||
"currentLevelExp": 52500,
|
|
||||||
"nextLevel": 4,
|
|
||||||
"nextLevelExp": 78750,
|
|
||||||
"micEffects": [
|
|
||||||
{
|
{
|
||||||
"id": 4,
|
"id": 4,
|
||||||
"dressType": 2,
|
"dressType": 2,
|
||||||
@@ -35,9 +29,7 @@
|
|||||||
"normalMicLockUrl": "",
|
"normalMicLockUrl": "",
|
||||||
"bossMicUrl": "",
|
"bossMicUrl": "",
|
||||||
"bossMicLockUrl": ""
|
"bossMicLockUrl": ""
|
||||||
}
|
},
|
||||||
],
|
|
||||||
"micSkins": [
|
|
||||||
{
|
{
|
||||||
"id": 1,
|
"id": 1,
|
||||||
"dressType": 1,
|
"dressType": 1,
|
||||||
@@ -67,5 +59,5 @@
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"timestamp": 1735200527891
|
"timestamp": 1735280964981
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user