新增语音输入功能权限校验及未授权处理;正式环境开放2个账号用于测试

This commit is contained in:
wangyifeng 2025-06-03 15:30:33 +08:00
parent 3719c162c3
commit 079db90021
3 changed files with 64 additions and 26 deletions

11
env/.env.test vendored
View File

@ -4,9 +4,16 @@ NODE_ENV = 'test'
VITE_SHOW_CONSOLE = true VITE_SHOW_CONSOLE = true
# 是否开启sourcemap # 是否开启sourcemap
VITE_SHOW_SOURCEMAP = true VITE_SHOW_SOURCEMAP = true
# baseUrl
# # baseUrl
VITE_BASEURL = 'http://172.16.100.93:8503' VITE_BASEURL = 'http://172.16.100.93:8503'
#VITE_SOCKET_API # #VITE_SOCKET_API
VITE_SOCKET_API = 'ws://172.16.100.93:8504' VITE_SOCKET_API = 'ws://172.16.100.93:8504'
# baseUrl
# VITE_BASEURL = 'http://192.168.88.21:9503'
#VITE_SOCKET_API
# VITE_SOCKET_API = 'ws://192.168.88.21:9504'
# EPRAPI baseUrl # EPRAPI baseUrl
VITE_EPR_BASEURL = 'http://114.218.158.24:9020' VITE_EPR_BASEURL = 'http://114.218.158.24:9020'

View File

@ -219,7 +219,14 @@
</div> --> </div> -->
</div> </div>
<div style="display: flex;" :class="item.user_id === talkParams.uid?'justify-end':'justify-start'"> <div
style="display: flex;"
:class="
item.user_id === talkParams.uid
? 'justify-end'
: 'justify-start'
"
>
<div class="talk-tools voice-content" v-if="item.voiceContent"> <div class="talk-tools voice-content" v-if="item.voiceContent">
<span>{{ item.voiceContent }}</span> <span>{{ item.voiceContent }}</span>
</div> </div>
@ -290,13 +297,17 @@
<div <div
class="pt-[16rpx] ml-[32rpx] mr-[32rpx] flex items-start justify-between" class="pt-[16rpx] ml-[32rpx] mr-[32rpx] flex items-start justify-between"
> >
<!-- <tm-image <tm-image
:width="52" :width="52"
:height="52" :height="52"
style="margin: 10rpx 10rpx 0 0 " style="margin: 10rpx 10rpx 0 0;"
:src="state.isUseSpeech ? keyboardIcon : microphoneIcon" :src="state.isUseSpeech ? keyboardIcon : microphoneIcon"
@click="changeEditorMode" @click="changeEditorMode"
></tm-image> --> v-if="
userStore.mobile === '13580848136' ||
userStore.mobile === '18100591363'
"
></tm-image>
<div class="flex-1 quillBox" style=""> <div class="flex-1 quillBox" style="">
<QuillEditor <QuillEditor
ref="editor" ref="editor"

View File

@ -105,7 +105,11 @@
src="@/static/image/record/chat-voice-cancel-blue.png" src="@/static/image/record/chat-voice-cancel-blue.png"
></image> ></image>
<text v-if="recording" class="font-36 font-regular"></text> <text v-if="recording" class="font-36 font-regular"></text>
<text v-if="!recording" class="font-36 font-regular" style="margin:20rpx 0 0;"> <text
v-if="!recording"
class="font-36 font-regular"
style="margin: 20rpx 0 0;"
>
{{ $t('release_hand_to_cancel') }} {{ $t('release_hand_to_cancel') }}
</text> </text>
</view> </view>
@ -278,6 +282,7 @@ export default {
nearTimeLimit: false, // nearTimeLimit: false, //
autoStopRecordCountDown: 0, // autoStopRecordCountDown: 0, //
autoStopRecordInterval: null, // autoStopRecordInterval: null, //
permisionState: false, //
} }
}, },
mounted() { mounted() {
@ -330,12 +335,32 @@ export default {
upx2px(upx) { upx2px(upx) {
return uni.upx2px(upx) + 'px' return uni.upx2px(upx) + 'px'
}, },
handleAppMicro() { handleAppMicro(permissionStatus) {
let that = this let that = this
setTimeout(function () { // setTimeout(function () {
that.$refs.requestPer.hideCustomPermission() // that.$refs.requestPer.hideCustomPermission()
}, 1000) // }, 1000)
if (Number(permissionStatus) === 1) {
that.continueAppMicro() that.continueAppMicro()
} else if (Number(permissionStatus) === -1) {
uni.showModal({
title: '提示',
content: '检测到您还未授权麦克风哦',
showCancel: true,
confirmText: '去授权',
cancelText: '保持拒绝',
success: ({ confirm, cancel }) => {
if (confirm) {
let OAWebView = plus.webview.all()
OAWebView.forEach((webview, index) => {
if (webview.id === 'webviewId1') {
webview.evalJS(`handleRequestAndroidPermission('settings')`)
}
})
}
},
})
}
}, },
handleRequestPer(permissionInfo, permissionID) { handleRequestPer(permissionInfo, permissionID) {
console.log(permissionInfo) console.log(permissionInfo)
@ -365,8 +390,6 @@ export default {
if (isUserNotAllow) { if (isUserNotAllow) {
// //
// //
} else {
message.error('似乎没检测到您的麦克风哦')
} }
console.error('请求录音权限失败:' + msg) console.error('请求录音权限失败:' + msg)
}, },
@ -410,14 +433,11 @@ export default {
// #endif // #endif
// #ifdef H5 // #ifdef H5
if (typeof plus !== 'undefined') { if (typeof plus !== 'undefined') {
webUni.postMessage({ let OAWebView = plus.webview.all()
data: { OAWebView.forEach((webview, index) => {
action: 'handleRequestAndroidPermission', if (webview.id === 'webviewId1') {
params: { webview.evalJS(`handleRequestAndroidPermission('micro')`)
type: 'micro', }
key: that.field,
},
},
}) })
} else { } else {
that.continueAppMicro() that.continueAppMicro()