论坛发帖添加使用移动网络上传视频的弹窗
This commit is contained in:
@ -14,6 +14,7 @@ import com.gh.common.view.GridSpacingItemDecoration
|
||||
import com.gh.gamecenter.R
|
||||
import com.gh.gamecenter.databinding.FragmentLocalMediaBinding
|
||||
import com.gh.gamecenter.entity.LocalVideoEntity
|
||||
import com.lightgame.utils.Utils
|
||||
import com.zhihu.matisse.internal.entity.Album
|
||||
import com.zhihu.matisse.internal.model.AlbumMediaCollection
|
||||
import com.zhihu.matisse.internal.utils.PathUtils
|
||||
@ -66,25 +67,38 @@ class LocalMediaFragment : BaseFragment<Any>(), AlbumMediaCollection.AlbumMediaC
|
||||
}
|
||||
mBinding.confirmTv.setOnClickListener {
|
||||
NewLogUtils.logChooseMedia("click_confirm", publishContentType, publishMediaType)
|
||||
val intent = Intent()
|
||||
if (mChooseType == LocalMediaActivity.ChooseType.VIDEO.value) {
|
||||
val localVideoList = arrayListOf<LocalVideoEntity>()
|
||||
mAdapter.getSelectedMediaList().forEach {
|
||||
val path = PathUtils.getPath(requireContext(), it.contentUri)
|
||||
val id = MD5Utils.getUrlMD5(path) + System.currentTimeMillis()
|
||||
val format = getFileFormat(it.mimeType)
|
||||
localVideoList.add(LocalVideoEntity(id, path, contentUri = it.contentUri, duration = it.duration, format = format, size = it.size))
|
||||
}
|
||||
intent.putExtra(LocalVideoEntity::class.java.name, localVideoList)
|
||||
if (!NetworkUtils.isNetworkConnected(context)) {
|
||||
Utils.toast(context, "网络异常,请检查手机网络状态")
|
||||
} else if (!NetworkUtils.isWifiConnected(context)) {
|
||||
DialogHelper.showDialog(requireContext(), "提示",
|
||||
"您当前正在使用移动网络上传视频,确定继续上传吗?",
|
||||
"继续上传", "暂时不了",
|
||||
{ uploadVideo() })
|
||||
} else {
|
||||
val data = mAdapter.getSelectedMediaList().map { it.contentUri }.toList()
|
||||
intent.putParcelableArrayListExtra(MatisseActivity.EXTRA_RESULT_SELECTION, ArrayList<Uri>(data))
|
||||
uploadVideo()
|
||||
}
|
||||
requireActivity().setResult(Activity.RESULT_OK, intent)
|
||||
requireActivity().finish()
|
||||
}
|
||||
}
|
||||
|
||||
private fun uploadVideo() {
|
||||
val intent = Intent()
|
||||
if (mChooseType == LocalMediaActivity.ChooseType.VIDEO.value) {
|
||||
val localVideoList = arrayListOf<LocalVideoEntity>()
|
||||
mAdapter.getSelectedMediaList().forEach {
|
||||
val path = PathUtils.getPath(requireContext(), it.contentUri)
|
||||
val id = MD5Utils.getUrlMD5(path) + System.currentTimeMillis()
|
||||
val format = getFileFormat(it.mimeType)
|
||||
localVideoList.add(LocalVideoEntity(id, path, contentUri = it.contentUri, duration = it.duration, format = format, size = it.size))
|
||||
}
|
||||
intent.putExtra(LocalVideoEntity::class.java.name, localVideoList)
|
||||
} else {
|
||||
val data = mAdapter.getSelectedMediaList().map { it.contentUri }.toList()
|
||||
intent.putParcelableArrayListExtra(MatisseActivity.EXTRA_RESULT_SELECTION, ArrayList<Uri>(data))
|
||||
}
|
||||
requireActivity().setResult(Activity.RESULT_OK, intent)
|
||||
requireActivity().finish()
|
||||
}
|
||||
|
||||
private fun getFileFormat(mimeType: String?): String {
|
||||
var format = ""
|
||||
tryWithDefaultCatch {
|
||||
|
||||
Reference in New Issue
Block a user