mrr.sj.front/utils/version.js

89 lines
2.5 KiB
JavaScript
Raw Permalink Normal View History

2026-03-25 13:29:04 +08:00
2026-03-24 11:45:13 +08:00
let VersionCode = '';
let DeviceType = '';
2026-03-25 13:29:04 +08:00
let platform = '';
2026-03-24 11:45:13 +08:00
export function setVersion() {
// 获取当前app的版本
const systemInfo = uni.getSystemInfoSync();
// 应用程序版本号
// 条件编译只在APP渲染
// #ifdef APP
VersionCode = systemInfo.appWgtVersion;
// #endif
// #ifdef H5
VersionCode = systemInfo.appVersion;
// VersionCode = "1.2.17" // 用于开发
console.log(systemInfo.appVersion, '版本号');
// #endif
// #ifdef MP-WEIXIN
const accountInfo = uni.getAccountInfoSync();
VersionCode = accountInfo.miniProgram.version // 小程序 版本号
console.log(accountInfo.miniProgram.version, '小程序版本号')
// #endif
// 获取手机型号
DeviceType = systemInfo.deviceBrand;
console.log('DeviceType', DeviceType)
//获取运行环境
platform = systemInfo.platform
2026-03-25 13:29:04 +08:00
// 新增 H5 处理
// #ifdef H5
// H5环境通过 User-Agent 判断真实设备类型,覆盖 platform
const ua = navigator.userAgent.toLowerCase();
if (/android/.test(ua)) {
platform = "sj_android";
} else if (/iphone|ipad|ipod/.test(ua)) {
platform = "sj_ios";
} else {
// 如果既不是安卓也不是 iOS比如 PC 浏览器),默认设为 sj_android
platform = "sj_android";
}
// #endif
2026-03-24 11:45:13 +08:00
if (platform === 'android') {
2026-03-25 13:29:04 +08:00
platform = "sj_android"
2026-03-24 11:45:13 +08:00
} else if (platform === 'ios') {
2026-03-25 13:29:04 +08:00
platform = "sj_ios"
2026-03-24 11:45:13 +08:00
} else {
// console.log('平台未知')
}
let data = {
'VersionCode': VersionCode ? VersionCode : '',
'DeviceBrand': platform ? platform : '',
'DeviceType': DeviceType ? DeviceType : ''
}
uni.setStorageSync('setVersion', data)
// store.commit('setVersion',data)
// store.state.version = data
}
export async function getBaseUrl() {
let version = uni.getStorageSync('setVersion')
await uni.request({
2026-03-25 13:29:04 +08:00
url: 'https://api.mrrwlkj.top/api/openPuc/getSjApiUrl', // 接口地址
2026-03-24 11:45:13 +08:00
method: 'GET', // 请求方法(默认 GET
header: {
'Content-Type': 'application/json', // 请求头
'VersionCode': version.VersionCode,
'DeviceBrand': version.DeviceBrand,
'DeviceType': version.DeviceType
},
success: (res) => {
if (res.data.code == 200) {
uni.setStorageSync('baseUrl', res.data.data.url)
2026-03-25 13:29:04 +08:00
// store.commit('setBaseUrl', res.data.data.url)
2026-03-24 11:45:13 +08:00
}
2026-03-25 13:29:04 +08:00
return res.data.data.url;
2026-03-24 11:45:13 +08:00
console.log('请求成功', res.data);
},
fail: (err) => {
console.log('请求失败', err);
return 'http://60.247.146.5:93';
},
complete: () => {
console.log('请求完成(无论成功失败都会执行)');
}
});
}