|
|
@@ -1,5 +1,6 @@
|
|
|
package com.yingyangfly.game.dialog
|
|
|
|
|
|
+import android.media.MediaPlayer
|
|
|
import android.os.Build
|
|
|
import android.os.Bundle
|
|
|
import android.view.LayoutInflater
|
|
|
@@ -11,7 +12,6 @@ import androidx.fragment.app.DialogFragment
|
|
|
import com.bumptech.glide.Glide
|
|
|
import com.gyf.immersionbar.BarHide
|
|
|
import com.gyf.immersionbar.ktx.immersionBar
|
|
|
-import com.yingyangfly.baselib.player.VoicePlayer
|
|
|
import com.yingyangfly.baselib.utils.LiveEventBusUtil
|
|
|
import com.yingyangfly.baselib.utils.RxBusCodes
|
|
|
import com.yingyangfly.baselib.utils.RxTimer
|
|
|
@@ -32,7 +32,6 @@ class CountdownDialog : DialogFragment() {
|
|
|
private var loadingImage: AppCompatImageView? = null
|
|
|
private var countdown = false
|
|
|
private var loadingOver = false
|
|
|
- private var voicePlayer: VoicePlayer? = null
|
|
|
|
|
|
override fun onCreate(savedInstanceState: Bundle?) {
|
|
|
super.onCreate(savedInstanceState)
|
|
|
@@ -66,7 +65,6 @@ class CountdownDialog : DialogFragment() {
|
|
|
val rootView = ViewTool.inflateFragmentPixels(
|
|
|
activity, R.layout.dialog_count_down, container, 1194, 834
|
|
|
)
|
|
|
- voicePlayer = VoicePlayer.getInstance(requireActivity())
|
|
|
findId(rootView)
|
|
|
initData()
|
|
|
initTimer()
|
|
|
@@ -100,36 +98,73 @@ class CountdownDialog : DialogFragment() {
|
|
|
"1" -> {
|
|
|
imageCountdown!!.setBackgroundResource(R.mipmap.icon_one)
|
|
|
imageCountdown!!.post {
|
|
|
+ val mediaPlayer = MediaPlayer()
|
|
|
val wavFile = resources.assets.openFd("one.wav")
|
|
|
- voicePlayer?.playByLocation(wavFile) {
|
|
|
-
|
|
|
+ mediaPlayer.setDataSource(
|
|
|
+ wavFile.fileDescriptor,
|
|
|
+ wavFile.startOffset,
|
|
|
+ wavFile.length
|
|
|
+ )
|
|
|
+ mediaPlayer.prepareAsync()
|
|
|
+ mediaPlayer.setOnPreparedListener {
|
|
|
+ mediaPlayer.start()
|
|
|
+ }
|
|
|
+ mediaPlayer.setOnCompletionListener {
|
|
|
+ mediaPlayer.stop()
|
|
|
+ mediaPlayer.reset()
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
"2" -> {
|
|
|
imageCountdown!!.setBackgroundResource(R.mipmap.icon_two)
|
|
|
imageCountdown!!.post {
|
|
|
+ val mediaPlayer = MediaPlayer()
|
|
|
val wavFile = resources.assets.openFd("two.wav")
|
|
|
- voicePlayer?.playByLocation(wavFile) {
|
|
|
-
|
|
|
+ mediaPlayer.setDataSource(
|
|
|
+ wavFile.fileDescriptor,
|
|
|
+ wavFile.startOffset,
|
|
|
+ wavFile.length
|
|
|
+ )
|
|
|
+ mediaPlayer.prepareAsync()
|
|
|
+ mediaPlayer.setOnPreparedListener {
|
|
|
+ mediaPlayer.start()
|
|
|
+ }
|
|
|
+ mediaPlayer.setOnCompletionListener {
|
|
|
+ mediaPlayer.stop()
|
|
|
+ mediaPlayer.reset()
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
"3" -> {
|
|
|
imageCountdown!!.setBackgroundResource(R.mipmap.icon_three)
|
|
|
imageCountdown!!.post {
|
|
|
+ val mediaPlayer = MediaPlayer()
|
|
|
val wavFile = resources.assets.openFd("three.wav")
|
|
|
- voicePlayer?.playByLocation(wavFile) {
|
|
|
-
|
|
|
+ mediaPlayer.setDataSource(
|
|
|
+ wavFile.fileDescriptor,
|
|
|
+ wavFile.startOffset,
|
|
|
+ wavFile.length
|
|
|
+ )
|
|
|
+ mediaPlayer.prepareAsync()
|
|
|
+ mediaPlayer.setOnPreparedListener {
|
|
|
+ mediaPlayer.start()
|
|
|
+ }
|
|
|
+ mediaPlayer.setOnCompletionListener {
|
|
|
+ mediaPlayer.stop()
|
|
|
+ mediaPlayer.reset()
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
if (it == time) {
|
|
|
countdown = true
|
|
|
+ rxTimer.cancel()
|
|
|
if (loadingOver) {
|
|
|
- onDialogClickListener?.invoke("")
|
|
|
- dismiss()
|
|
|
+ imageCountdown!!.postDelayed({
|
|
|
+ onDialogClickListener?.invoke("")
|
|
|
+ dismiss()
|
|
|
+ }, 600)
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -137,8 +172,8 @@ class CountdownDialog : DialogFragment() {
|
|
|
LiveEventBusUtil.observer<String>(this, RxBusCodes.LOADINGOVER) {
|
|
|
loadingOver = true
|
|
|
if (countdown) {
|
|
|
- onDialogClickListener?.invoke("")
|
|
|
rxTimer.cancel()
|
|
|
+ onDialogClickListener?.invoke("")
|
|
|
dismiss()
|
|
|
}
|
|
|
}
|