fix: bug
This commit is contained in:
@@ -61,6 +61,11 @@
|
||||
import {
|
||||
useStorageStore
|
||||
} from '@/store/storage.js';
|
||||
import {
|
||||
onHide,
|
||||
onShow
|
||||
} from '@dcloudio/uni-app';
|
||||
|
||||
|
||||
const storageStore = useStorageStore();
|
||||
const proxy = getCurrentInstance();
|
||||
@@ -304,15 +309,13 @@
|
||||
if (IsAndEnv) {
|
||||
let _recordPerm = await permission.requestAndroidPermission('android.permission.RECORD_AUDIO');
|
||||
if (_recordPerm !== 1) {
|
||||
isGettingPermission.value = true
|
||||
common.show('提示信息', '当前页面需要使用的录音权限,是否前往开启?', true, '取消', '确定').then((res) => {
|
||||
if (res) {
|
||||
isGettingPermission.value = true
|
||||
hideOverlayTalking()
|
||||
// 去开启权限
|
||||
permission.gotoAppPermissionSetting();
|
||||
} else {
|
||||
// 取消
|
||||
hideOverlayTalking()
|
||||
common.navigateBack();
|
||||
}
|
||||
});
|
||||
@@ -324,15 +327,13 @@
|
||||
let _recordPerm = uni.getAppAuthorizeSetting();
|
||||
let _state = _recordPerm.microphoneAuthorized;
|
||||
if (_state === 'denied') {
|
||||
isGettingPermission.value = true
|
||||
common.show('提示信息', '当前页面需要使用的录音权限,是否前往开启?', true, '取消', '确定').then((res) => {
|
||||
if (res) {
|
||||
isGettingPermission.value = true
|
||||
hideOverlayTalking()
|
||||
// 去开启权限
|
||||
uni.openAppAuthorizeSetting();
|
||||
} else {
|
||||
// 取消
|
||||
hideOverlayTalking()
|
||||
common.navigateBack();
|
||||
}
|
||||
});
|
||||
@@ -351,6 +352,11 @@
|
||||
const isTalking = ref(false);
|
||||
const showOverlayTalking = (obj) => {
|
||||
if (showTalkingModel.value) return;
|
||||
if (isGettingPermission.value) {
|
||||
stopRecord()
|
||||
isGettingPermission.value = false
|
||||
return
|
||||
}
|
||||
if (isLoadingState.value) {
|
||||
uni.showToast({
|
||||
title: props.loadingText,
|
||||
@@ -449,6 +455,9 @@
|
||||
keyboardIsShow.value = !keyboardIsShow.value;
|
||||
answerValue.value = '';
|
||||
};
|
||||
onHide(()=>{
|
||||
isGettingPermission.value = true
|
||||
})
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
||||
@@ -50,7 +50,11 @@
|
||||
import {
|
||||
useStorageStore
|
||||
} from '@/store/storage.js';
|
||||
|
||||
import {
|
||||
onHide,
|
||||
onShow
|
||||
} from '@dcloudio/uni-app';
|
||||
|
||||
const storageStore = useStorageStore();
|
||||
const proxy = getCurrentInstance();
|
||||
const emit = defineEmits(['uploadVoice', 'startRecord']);
|
||||
@@ -144,6 +148,10 @@
|
||||
}
|
||||
});
|
||||
unref(recordObjCom).onStart(() => {
|
||||
if(isGettingPermission.value){
|
||||
stopRecord();
|
||||
return
|
||||
}
|
||||
startFlag.value = 1;
|
||||
setTimeout(() => {
|
||||
startFlag.value = 2;
|
||||
@@ -229,6 +237,7 @@
|
||||
// #ifdef APP-PLUS
|
||||
if (!hasPermission.value) {
|
||||
let _res = await getPermission()
|
||||
console.log(_res,11111111)
|
||||
if (_res) {
|
||||
hasPermission.value = true
|
||||
showOverlayTalking(obj);
|
||||
@@ -242,18 +251,18 @@
|
||||
// #ifdef APP-PLUS
|
||||
// 安卓端
|
||||
if (IsAndEnv) {
|
||||
isGettingPermission.value = true
|
||||
let _recordPerm = await permission.requestAndroidPermission('android.permission.RECORD_AUDIO');
|
||||
if (_recordPerm !== 1) {
|
||||
showTalkingModel.value = false;
|
||||
isGettingPermission.value = true
|
||||
common.show('提示信息', '当前页面需要使用的录音权限,是否前往开启?', true, '取消', '确定').then((res) => {
|
||||
if (res) {
|
||||
isGettingPermission.value = true
|
||||
hideOverlayTalking()
|
||||
// 去开启权限
|
||||
permission.gotoAppPermissionSetting();
|
||||
} else {
|
||||
// 取消
|
||||
common.navigateBack();
|
||||
hideOverlayTalking()
|
||||
}
|
||||
});
|
||||
return false
|
||||
@@ -264,16 +273,14 @@
|
||||
let _recordPerm = uni.getAppAuthorizeSetting();
|
||||
let _state = _recordPerm.microphoneAuthorized;
|
||||
if (_state === 'denied') {
|
||||
isGettingPermission.value = true
|
||||
common.show('提示信息', '当前页面需要使用的录音权限,是否前往开启?', true, '取消', '确定').then((res) => {
|
||||
if (res) {
|
||||
isGettingPermission.value = true
|
||||
hideOverlayTalking()
|
||||
// 去开启权限
|
||||
uni.openAppAuthorizeSetting();
|
||||
} else {
|
||||
// 取消
|
||||
common.navigateBack();
|
||||
hideOverlayTalking()
|
||||
}
|
||||
});
|
||||
return false
|
||||
@@ -291,6 +298,11 @@
|
||||
const isTalking = ref(false);
|
||||
const showOverlayTalking = (obj) => {
|
||||
if (showTalkingModel.value) return;
|
||||
if (isGettingPermission.value) {
|
||||
stopRecord()
|
||||
isGettingPermission.value = false
|
||||
return
|
||||
}
|
||||
if (isLoadingState.value) {
|
||||
uni.showToast({
|
||||
title: props.loadingText,
|
||||
@@ -344,6 +356,12 @@
|
||||
}
|
||||
}
|
||||
};
|
||||
onShow(()=>{
|
||||
// stopRecord()
|
||||
})
|
||||
onHide(()=>{
|
||||
isGettingPermission.value = true
|
||||
})
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
||||
@@ -65,11 +65,11 @@
|
||||
<view class="static-desc">{{!isPass?'你这个得分,不容易的!':'恭喜阁下过关斩将,顺利通关!'}}</view>
|
||||
|
||||
<view class="static-charts">
|
||||
<ChartThree v-if="length === 3" fromType="tra" :dataList="evalDimens" />
|
||||
<ChartFour v-if="length === 4" fromType="tra" :dataList="evalDimens" />
|
||||
<ChartFive v-if="length === 5" fromType="tra" :dataList="evalDimens" />
|
||||
<ChartSix v-if="length === 6" fromType="tra" :dataList="evalDimens" />
|
||||
<ChartSeven v-if="length === 7" fromType="tra" :dataList="evalDimens" />
|
||||
<ChartThree v-if="evalDimens.length === 3" fromType="tra" :dataList="evalDimens" />
|
||||
<ChartFour v-if="evalDimens.length === 4" fromType="tra" :dataList="evalDimens" />
|
||||
<ChartFive v-if="evalDimens.length === 5" fromType="tra" :dataList="evalDimens" />
|
||||
<ChartSix v-if="evalDimens.length === 6" fromType="tra" :dataList="evalDimens" />
|
||||
<ChartSeven v-if="evalDimens.length === 7" fromType="tra" :dataList="evalDimens" />
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@@ -107,7 +107,6 @@
|
||||
const feedbackRef = ref()
|
||||
const roleInfo = ref({})
|
||||
const showAllTalk = ref(false)
|
||||
const length = ref(6)
|
||||
const traInfo = ref({})
|
||||
const traTm = ref('')
|
||||
const activeVoiceTalkingItemId = ref('')
|
||||
|
||||
@@ -351,9 +351,7 @@
|
||||
return;
|
||||
}
|
||||
if (commond === 'ASK-ANSWER') {
|
||||
console.log('ASK-ANSWER',body);
|
||||
if (body.event === 'start') {
|
||||
console.log('开始回答!');
|
||||
answerIsOver.value = false;
|
||||
answerText.value = '';
|
||||
talkingList.value.pop();
|
||||
@@ -371,13 +369,10 @@
|
||||
} else if (body.event === 'token') {
|
||||
answerIsOver.value = false;
|
||||
answerText.value += body.data;
|
||||
console.log(answerText.value)
|
||||
talkingList.value[talkingList.value.length - 1].talkingText = answerText.value;
|
||||
} else if (body.event === 'end') {
|
||||
console.log('完成回答!');
|
||||
answerIsOver.value = true;
|
||||
} else if (body.event === 'recordAi') {
|
||||
console.log('推送声音id!');
|
||||
talkingList.value[talkingList.value.length - 1].execLogId = body.execLogId
|
||||
}
|
||||
scrollToBottomNow();
|
||||
|
||||
Reference in New Issue
Block a user