Merge branch 'master' of gitlab.navinfo.com:vivo/navinfovivo

This commit is contained in:
squallzhjch 2023-01-13 14:47:22 +08:00
commit 909db31556
8 changed files with 67 additions and 33 deletions

3
app/.gitignore vendored
View File

@ -1 +1,2 @@
/build
/build
/release

View File

@ -20,8 +20,8 @@ android {
applicationId "com.navinfo.volvo"
minSdk 24
targetSdk 32
versionCode 1
versionName "1.1"
versionCode 2
versionName "20230112"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"

View File

@ -36,11 +36,11 @@ class MessagePagingSource(
data?.let { d ->
if (d.rows != null) {
list = d.rows
for (item in list){
if(item.version == Constant.message_version_right_off && item.status == Constant.message_status_late){
item.status = Constant.message_status_send_over
}
}
// for (item in list){
// if(item.version == Constant.message_version_right_off && item.status == Constant.message_status_late){
// item.status = Constant.message_status_send_over
// }
// }
}
}
} else {

View File

@ -32,6 +32,7 @@ import com.github.file_picker.extension.showFilePicker
import com.github.file_picker.listener.OnItemClickListener
import com.github.file_picker.listener.OnSubmitClickListener
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import com.google.android.material.internal.ToolbarUtils
import com.gredicer.datetimepicker.DateTimePickerFragment
import com.hjq.permissions.OnPermissionCallback
import com.hjq.permissions.Permission
@ -183,24 +184,34 @@ class ObtainMessageFragment : Fragment() {
override fun onResume() {
super.onResume()
if (obtainMessageViewModel.getMessageLiveData().value != null && Constant.message_status_send_over.equals(
(obtainMessageViewModel.getMessageLiveData().value as GreetingMessage).status
)
if (obtainMessageViewModel.getMessageLiveData().value != null
) {
binding.tvMessageTitle.isEnabled = false
binding.btnStartPhoto.isEnabled = false
binding.btnStartCamera.isEnabled = false
binding.btnStartRecord.isEnabled = false
binding.btnSelectSound.isEnabled = false
binding.edtSendFrom.isEnabled = false
binding.edtSendTo.isEnabled = false
binding.btnSendTime.isEnabled = false
binding.btnObtainMessageConfirm.isEnabled = false
binding.tvPhotoName.isEnabled = false
binding.tvAudioName.isEnabled = false
binding.imgPhotoDelete.isEnabled = false
binding.imgAudioDelete.isEnabled = false
if (!"".equals((obtainMessageViewModel.getMessageLiveData().value as GreetingMessage).status)
&&!Constant.message_status_late.equals(
(obtainMessageViewModel.getMessageLiveData().value as GreetingMessage).status)
) {
binding.tvMessageTitle.isEnabled = false
binding.btnStartPhoto.isEnabled = false
binding.btnStartCamera.isEnabled = false
binding.btnStartRecord.isEnabled = false
binding.btnSelectSound.isEnabled = false
binding.edtSendFrom.isEnabled = false
binding.edtSendTo.isEnabled = false
binding.btnSendTime.isEnabled = false
binding.btnObtainMessageConfirm.isEnabled = false
binding.tvPhotoName.isEnabled = false
binding.tvAudioName.isEnabled = false
binding.imgPhotoDelete.isEnabled = false
binding.imgAudioDelete.isEnabled = false
}
if (!"".equals((obtainMessageViewModel.getMessageLiveData().value as GreetingMessage).status)) {
binding.btnObtainMessageConfirm.text = "保存修改"
} else {
binding.btnObtainMessageConfirm.text = "确认提交"
}
}
}
fun initView() {
@ -342,8 +353,11 @@ class ObtainMessageFragment : Fragment() {
onItemClickListener = object : OnItemClickListener {
override fun onClick(media: Media, position: Int, adapter: FilePickerAdapter) {
if (!media.file.isDirectory) {
if (!media.file.name.endsWith(".m4a")) {
ToastUtils.showToast("只能选择.m4a文件")
if (!media.file.name.lowercase().endsWith(".m4a")
&&!media.file.name.lowercase().endsWith(".aac")
&&!media.file.name.lowercase().endsWith(".mp3")
&&!media.file.name.lowercase().endsWith(".ogg")) {
ToastUtils.showToast("只能选择m4a/aac/mp3/ogg文件")
return
}
if (media.file.length() > 2 * 1000 * 1000) {
@ -386,11 +400,15 @@ class ObtainMessageFragment : Fragment() {
// 申请权限
recorderLifecycleObserver.initAndStartRecorder()
startRecordTime = System.currentTimeMillis()
binding.btnStartRecord.text = "正在录音"
Toast.makeText(requireContext(), "正在录音", Toast.LENGTH_SHORT).show()
false
}
MotionEvent.ACTION_UP -> {
binding.btnStartRecord.text = "长按录音"
if (System.currentTimeMillis() - startRecordTime < 2000) {
ToastUtils.showToast("录音时间太短!")
Toast.makeText(requireContext(), "录音时间太短", Toast.LENGTH_SHORT).show()
recorderLifecycleObserver.stopAndReleaseRecorder()
return
}
@ -444,9 +462,9 @@ class ObtainMessageFragment : Fragment() {
override fun onSuccess(file: File?) {
XLog.d("压缩图片成功:${file?.absolutePath}")
// 删除源文件
if (!it.absolutePath.equals(file?.absolutePath)) {
it?.delete()
}
// if (!it.absolutePath.equals(file?.absolutePath)) {
// it?.delete()
// }
// 如果当前文件不在camera缓存文件夹下则移动该文件
if (!file!!.parentFile.absolutePath.equals(SystemConstant.CameraFolder)) {
try {

View File

@ -0,0 +1,6 @@
<vector android:height="24dp" android:tint="#000000"
android:viewportHeight="24" android:viewportWidth="24"
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="@android:color/white" android:pathData="M9,9m-4,0a4,4 0,1 1,8 0a4,4 0,1 1,-8 0"/>
<path android:fillColor="@android:color/white" android:pathData="M9,15c-2.67,0 -8,1.34 -8,4v2h16v-2c0,-2.66 -5.33,-4 -8,-4zM16.76,5.36l-1.68,1.69c0.84,1.18 0.84,2.71 0,3.89l1.68,1.69c2.02,-2.02 2.02,-5.07 0,-7.27zM20.07,2l-1.63,1.63c2.77,3.02 2.77,7.56 0,10.74L20.07,16c3.9,-3.89 3.91,-9.95 0,-14z"/>
</vector>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/ic_baseline_record_voice_over_24" android:state_pressed="true"></item>
<item android:drawable="@drawable/ic_baseline_record_voice_over_24" android:state_selected="true"></item>
<item android:drawable="@drawable/ic_baseline_record_voice_over_24" android:state_pressed="true"></item>
<item android:drawable="@drawable/ic_baseline_record_voice_over_24" android:state_checked="true"></item>
<item android:drawable="@drawable/ic_baseline_fiber_manual_record_24" ></item>
</selector>

View File

@ -193,7 +193,7 @@
android:layout_height="wrap_content"
android:padding="@dimen/default_widget_padding"
android:text="长按录音"
app:icon="@drawable/ic_baseline_fiber_manual_record_24"></com.google.android.material.button.MaterialButton>
app:icon="@drawable/selector_recorder_src"></com.google.android.material.button.MaterialButton>
<Space
android:layout_width="@dimen/default_widget_padding"
@ -403,7 +403,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="修改保存"></com.google.android.material.button.MaterialButton>
android:text="确认提交"></com.google.android.material.button.MaterialButton>
</LinearLayout>
<indi.liyi.viewer.ImageViewer

View File

@ -19,4 +19,5 @@
app:viewBackground="@android:color/transparent"
app:viewCornerRadius="100"
app:visualizationNotPlayedColor="@color/teal_700"
app:visualizationPlayedColor="@color/teal_200" />
app:visualizationPlayedColor="@color/teal_200"
tools:ignore="MissingDefaultResource" />