联调设备存储

This commit is contained in:
xuli3099
2025-08-15 10:13:39 +08:00
parent aede40ff2a
commit b88c64af7e
8 changed files with 150 additions and 176 deletions

View File

@@ -0,0 +1,31 @@
<template>
<view class="con-body">
<view class="con-bg">
<!-- 头部 -->
<customHeader ref="customHeaderRef" :title="'搜索'"
:leftFlag="true" :rightFlag="false"
></customHeader>
<!-- 高度来避免头部遮挡 -->
<view class="top-height"></view>
<customSearch :type="type"></customSearch>
</view>
</view>
</template>
<script setup>
import { ref, onMounted } from 'vue';
import { onLoad } from '@dcloudio/uni-app';
import customHeader from '@/components/customHeader.vue'
import customSearch from '@/components/customSearch.vue'
let type=ref(1);
onLoad(async(opt) => {
console.log(opt.type)
type.value = opt.type;
})
</script>
<style scoped>
</style>

View File

@@ -103,19 +103,6 @@ onLoad(async(opt) => {
systemInfo = uni.getSystemInfoSync()
// #ifdef APP-PLUS
try {
// // 授权设备存储
// let res = {granted:false}
// if(systemInfo.osAndroidAPILevel >=30){
// let permissions = ['android.permission.READ_MEDIA_IMAGES', 'android.permission.READ_MEDIA_VIDEO', 'android.permission.READ_MEDIA_AUDIO'];
// res = await requestAndroidPermissionAsync(permissions);
// }else{
// let permissions = ['android.permission.READ_EXTERNAL_STORAGE', 'android.permission.WRITE_EXTERNAL_STORAGE'];
// res = await requestAndroidPermissionAsync(permissions);
// }
// // 读取设备id
// if (result.granted) {
// console.log('所有权限已授予')
safeSave.getSafeFile({ "key": "app_device_id" }, res2 => {
if (res2.code == 1) {
let deviceId = res2.data;
@@ -129,19 +116,15 @@ onLoad(async(opt) => {
},1000*10)//10秒刷新一次
}
} else {
showAlert('读取失败:'+res2.msg)
// showAlert('读取失败:'+res2.msg)
}
})
// } else {
// showAlert("您还没对设备授权,请授权!")
// }
} catch (error) {
console.error('权限请求出错:', error);
showAlert('权限请求出错:', error)
// showAlert('权限请求出错:', error)
}
// #endif
})
// 绑定状态1=已提交、2=等待审核、3=审核通过、4=绑定成功、5=审核拒绝)
@@ -248,23 +231,12 @@ const submitForm = async() => {
btnLoading.value = false;
try {
// 授权设备存储
// let result = {granted:false}
// if(systemInfo.osAndroidAPILevel >=30){
// let permissions = ['android.permission.READ_MEDIA_IMAGES', 'android.permission.READ_MEDIA_VIDEO', 'android.permission.READ_MEDIA_AUDIO'];
// result = await requestAndroidPermissionAsync(permissions);
// }else{
// let permissions = ['android.permission.READ_EXTERNAL_STORAGE', 'android.permission.WRITE_EXTERNAL_STORAGE'];
// result = await requestAndroidPermissionAsync(permissions);
// }
// if (result.granted) {
// 存储设备id
safeSave.saveSafeFile({ "key": "app_device_id","value": deviceId.value}, res3 => {
showAlert("保存成功=>"+JSON.stringify(res3));
// showAlert("保存成功=>"+JSON.stringify(res3));
if (res3.code == 1) {
console.log('保存成功:'+res3.msg)
showAlert("保存成功=>"+res3.msg);
// showAlert("保存成功=>"+res3.msg);
// uni.setStorageSync('app_device_id', deviceId.value)
bindStatus.value = res.bindStatus;//默认为 2-等待审核
// 刷新状态
@@ -273,15 +245,14 @@ const submitForm = async() => {
refreshBindStatus()
},1000*10)//10秒刷新一次
} else {
showAlert('保存失败:'+res3.msg)
console.log("保存失败=>",res3.msg)
// showAlert('保存失败:'+res3.msg)
}
})
// } else {
// showAlert("您还没对设备授权,请授权!")
// }
} catch (error) {
showAlert('设备处理异常:'+error)
console.log("saveSafeFile=>",error)
// showAlert('设备处理异常:'+error)
}
}).catch(err => {

View File

@@ -9,6 +9,10 @@
<!-- #ifdef H5 -->
<view style="height:50rpx"></view>
<!-- #endif -->
<!-- #ifdef APP-PLUS -->
<button @click="handleDelete">删除缓存</button>
<!-- #endif -->
<!-- 搜索 @confirm="handleSearch" -->
<view class="search search-sao" >
<uni-search-bar class="custom-search" radius="28"
@@ -153,7 +157,30 @@ import { getWeekStr,formatTimestamp } from '@/utils/datetime.js'
import { formatMoney } from '@/utils/formatter.js'
import {showLoading,hideLoading} from '@/utils/message.js'
// #ifdef APP-PLUS
// 获取 存储手机的module
const safeSave = uni.requireNativePlugin("Tm-TmSafeSaveFileModule");
const handleDelete=()=>{
safeSave.delSafeFile({
"key": "app_device_id"
}, (res) => {
console.log(res);
if (res.code == 1) {
uni.showModal({
title: "删除成功",
content:"删除成功",
})
} else {
uni.showModal({
title: "读取失败",
content: res.msg,
})
}
})
}
// #endif
onLoad(async(opt) => {

View File

@@ -57,42 +57,22 @@ onLoad(async(opt) => {
if(!versionVisible.value){
try {
// 授权设备存储
// let result = {granted:false}
// if(systemInfo.osVersion<13){
// let permissions = ['android.permission.READ_EXTERNAL_STORAGE', 'android.permission.WRITE_EXTERNAL_STORAGE'];
// result = await requestAndroidPermissionAsync(systemInfo,permissions);
// }else if(systemInfo.osVersion==13){
// let permissions = ['android.permission.READ_MEDIA_IMAGES', 'android.permission.READ_MEDIA_VIDEO', 'android.permission.READ_MEDIA_AUDIO'];
// result = await requestAndroidPermissionAsync(systemInfo,permissions);
// }else{
// let permissions = ['android.permission.READ_MEDIA_VISUAL_USER_SELECTED'];
// result = await requestAndroidPermissionAsync(systemInfo,permissions);
// }
// if (result.granted) {
// showAlert("11授权成功")
// setTimeout(()=>{
// selectDeviceId();
// },500)
// } else {
let granted = requestAndroidPermission(systemInfo);
if(granted){
showAlert("22授权成功")
// showAlert("22授权成功")
setTimeout(()=>{
selectDeviceId();
},500)
}
// showAlert("您还没对设备授权,请授权!")
// }
} catch (error) {
console.error('权限请求出错:', error);
showAlert(JSON.stringify(error))
// showAlert(JSON.stringify(error))
}
}
// #endif
// #ifdef H5
setTimeout(()=>{
// setTimeout(()=>{
if(userStore.isLogin){
uni.reLaunch({
url: '/pages/home/home',
@@ -102,7 +82,7 @@ onLoad(async(opt) => {
url: '/pages/login/login',
});
}
},2000)
// },1000)
// #endif
});
@@ -153,16 +133,14 @@ const selectDeviceId = async()=>{
// 查询本地缓存的设备状态是否绑定过
// let deviceId = uni.getStorageSync('app_device_id');// 本地设备ID
try {
// showAlert("safeSave=>"+safeSave)
safeSave.getSafeFile({ "key": "app_device_id" }, res2 => {
// showAlert("读取成功=>"+JSON.stringify(res2));
if (res2.code == 1) {
let deviceId = res2.data;
console.log("读取成功=>",deviceId)
showAlert("读取成功=>"+deviceId);
// showAlert("读取成功=>"+deviceId);
getBindStatus({uniqCode:deviceId}).then(res=>{
let bindStatus = res.bindStatus
setTimeout(()=>{
// setTimeout(()=>{
// 绑定状态1=已提交、2=等待审核、3=审核通过、4=绑定成功、5=审核拒绝)
if(bindStatus == 4){
// 检查是否已登录 并 获取用户信息
@@ -181,19 +159,20 @@ const selectDeviceId = async()=>{
url: '/pages/deviceAuth/deviceAuth',
});
}
},2000)
// },1000)
});
} else {
showAlert('读取失败:'+res2.msg)
setTimeout(()=>{
// showAlert('读取失败:'+res2.msg)
// setTimeout(()=>{
uni.reLaunch({
url: '/pages/deviceAuth/deviceAuth',
});
},2000)
// },1000)
}
})
} catch (error) {
showAlert("catch=>"+error)
console.log("getSafeFile=>",error)
// showAlert("catch=>"+error)
}
}
// 下载最新版本

View File

@@ -254,7 +254,7 @@ const submitForm = () => {
param.password = password;
// #ifdef H5
param.uniqCode = uni.getStorageSync('app_device_id');//先从缓存取之后处理 '7f47cfb4-59e2-4cb9-ac46-9da5e23c4de2'//
param.uniqCode = '7f47cfb4-59e2-4cb9-ac46-9da5e23c4de2';//uni.getStorageSync('app_device_id');//先从缓存取之后处理 '7f47cfb4-59e2-4cb9-ac46-9da5e23c4de2'//
let res = await login(param);
userStore.login(res);
uni.switchTab({ url: '/pages/home/home' })
@@ -263,23 +263,11 @@ const submitForm = () => {
// #ifdef APP-PLUS
try {
// 授权设备存储
// let systemInfo = uni.getSystemInfoSync();
// let result = {}
// if(systemInfo.osAndroidAPILevel >=30){
// let permissions = ['android.permission.READ_MEDIA_IMAGES', 'android.permission.READ_MEDIA_VIDEO', 'android.permission.READ_MEDIA_AUDIO'];
// result = await requestAndroidPermissionAsync(permissions);
// }else{
// let permissions = ['android.permission.READ_EXTERNAL_STORAGE', 'android.permission.WRITE_EXTERNAL_STORAGE'];
// result = await requestAndroidPermissionAsync(permissions);
// }
// if (result.granted) {
// console.log('所有权限已授予')
// 读取设备ID
safeSave.getSafeFile({ "key": "app_device_id" }, res3 => {
if (res3.code == 1) {
let deviceId = res3.data;
showAlert("读取成功=>"+deviceId);
// showAlert("读取成功=>"+deviceId);
param.uniqCode = deviceId;
login(param).then(res=>{
userStore.login(res);
@@ -288,17 +276,14 @@ const submitForm = () => {
})
} else {
showAlert('读取失败:'+res3.msg)
// showAlert('读取失败:'+res3.msg)
console.error('读取失败:', error);
btnLoading.value = false;
}
})
// } else {
// showAlert("您还没对设备授权,请授权!")
// btnLoading.value = false;
// }
} catch (error) {
console.error('出错:', error);
showAlert('出错:', error)
console.error('读取失败:', error);
// showAlert('出错:', error)
btnLoading.value = false;
}
// #endif

View File

@@ -47,6 +47,7 @@ import { getNavBarPaddingTop } from '@/utils/system.js'
import { noticeList } from '@/api/notice.js'
import { formatTimestamp } from '@/utils/datetime.js'
import MescrollUni from 'mescroll-uni/mescroll-uni.vue';
// import publicSearch from
// 获取导航栏高度用于内容区域padding
const navBarPaddingTop = ref(0);
@@ -56,7 +57,7 @@ onMounted(() => {
// 获取input 焦点跳转
let handleFocus=()=>{
uni.navigateTo({url:'/pages/search/search?type=3'})
// uni.navigateTo({url:'/pages/search/search?type=3'})
}
// 查询搜索跳转

View File

@@ -87,6 +87,8 @@ page {
/* 弹出提示框修改样式 begin */
/* #ifdef H5 */
.uni-modal {
border-radius: 24rpx !important;
width: 70% !important;
@@ -136,7 +138,7 @@ page {
background-color: #05A3F4 !important;
color: #fff !important;
}
/* #endif */
/* 弹出提示框修改样式 end */
/* 搜索框修改样式 begin */

View File

@@ -42,6 +42,7 @@ export const requestAndroidPermissionAsync = (systemInfo,permissions) => {
// 安卓同步调用
export const requestAndroidPermission = (systemInfo) => {
let granted = false;
@@ -61,21 +62,7 @@ export const requestAndroidPermission = (systemInfo) => {
granted=true
}else{
granted=false //"当前文件保存权限被关闭,请到设置中开启才能继续后续操作"
uni.showModal({
title: '提示',
content: "请点击授权",
cancelText:'去设置',
confirmText:'已设置',
success: function (res) {
if (res.confirm) {
uni.reLaunch({
url: '/pages/loading/loading',
});
} else if (res.cancel) {
jumpAuthPermission();
}
}
})
goPermission();//调用授权方法去授权
}
}else if(systemInfo.osVersion ==13){
@@ -96,21 +83,7 @@ export const requestAndroidPermission = (systemInfo) => {
granted=true
}else{
granted=false //"当前文件保存权限被关闭,请到设置中开启才能继续后续操作"
uni.showModal({
title: '提示',
content: "请点击授权",
cancelText:'去设置',
confirmText:'已设置',
success: function (res) {
if (res.confirm) {
uni.reLaunch({
url: '/pages/loading/loading',
});
} else if (res.cancel) {
jumpAuthPermission();
}
}
})
goPermission();//调用授权方法去授权
}
}else{
let permissionStatus = MainActivity.checkSelfPermission(Manifest.permission.READ_MEDIA_VISUAL_USER_SELECTED);
@@ -122,11 +95,21 @@ export const requestAndroidPermission = (systemInfo) => {
granted=true
}else{
granted=false //"当前文件保存权限被关闭,请到设置中开启才能继续后续操作"
goPermission();//调用授权方法去授权
}
}
return granted
}
// 弹窗跳授权页面
const goPermission=()=>{
uni.showModal({
title: '提示',
content: "请点击授权",
cancelText:'去设置',
confirmText:'已设置',
content: "请进行设备授权",
cancelText:'去授权',
confirmText:'已授权',
success: function (res) {
if (res.confirm) {
uni.reLaunch({
@@ -138,11 +121,6 @@ export const requestAndroidPermission = (systemInfo) => {
}
})
}
}
return granted
}
// 跳转授权按钮
const jumpAuthPermission=()=>{
@@ -157,5 +135,5 @@ const jumpAuthPermission=()=>{
uni.reLaunch({
url: '/pages/loading/loading',
});
},500)
},1000)
}