Files
mht.js/App.vue
2025-10-22 07:50:31 +08:00

178 lines
5.4 KiB
Vue
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<script>
import initApp from '@/common/appInit.js';
import openApp from '@/common/openApp.js';
import process from './utils/process.js' //UDP处理
// import Underlying from './utils/UnderlyingUpdate.js'
import { store, mutations } from '@/uni_modules/uni-id-pages/common/store.js'
// #ifdef H5
openApp() //创建在h5端全局悬浮引导用户下载app的功能
// #endif
import checkIsAgree from '@/pages/uni-agree/utils/uni-agree.js';
import { Static } from "vue";
export default {
globalData: {
searchText: '',
appVersion: {},
config: {},
$i18n: {},
$t: {},
},
onLaunch: function() {
console.log('App Launch')
// 定时更新账户状态
this.timer = setInterval(() => {
//联表查询uni-id-users表的保存的数据
db.collection('uni-id-users').where("'_id' == $cloudEnv_uid")
.field('mobile,nickname,user_name,email,avatar_file,status')
.get().then((res) => {
const data = res.result.data[0]
console.log(data.status)
//如果账号是禁用状态就退出
if (1 === data.status) {
console.log(data.status)
// uni.showToast({
// title: '检测到账号异常,请重新登录',
// icon: "none",
// duration: 10000
// });
//退出登录
mutations.logout()
// uni.navigateTo({
// url: '/uni_modules/uni-id-pages/pages/login/login-withoutpwd',
// })
} else {
console.log("账号正常")
}
})
}, 30 * 1000);
// //获取缓存中的登录数据
// let tokenRes = uni.getStorageSync('token');
// let userInfoRes = uni.getStorageSync('userInfo');
// if (tokenRes && userInfoRes) { //如果没有token和userInfo则登录
// //通过一个接口测试token是否失效
// getDoProcess().then(function(res) {
// if (res.code == 401) { //如果 失效 则跳转
// uni.navigateTo({
// url: '/uni_modules/uni-id-pages/pages/login/login-withpwd',
// })
// } else { //否则关闭加载动画,进入主界面,这里需要把主界面 放在pages.json中第一个
// uni.redirectTo({
// url: '/pages/video/video',
// });
// }
// })
// } else {
// uni.redirectTo({
// url: '/pages/video/video',
// });
// }
//获取网络类型
uni.getNetworkType({
success: function(res) {
console.log(res.networkType); //网络类型 wifi、2g、3g、4g、ethernet、unknown、none
if (res.networkType === "none") {
console.log("当前无网络");
uni.showToast({
title: '网络异常,请重新启动',
icon: "none",
duration: 10000
});
//退出
plus.runtime.restart();
// uni.reLaunch({
// url: '/pages/productlist/productlist'
// })
} else {
//有网络
console.log("有网络");
// uni.showToast({
// title: '当前网络类型为' + res.networkType,
// icon: "none",
// duration: 3000
// });
}
}
});
//授权程序
const db = uniCloud.database();
db.collection('config').get().then((res) => {
const DownloadData = res.result.data[0]
//判断数据库中的RestartApp 的标志为true就 运行程序,
if (DownloadData.RestartApp === "true") {
//确保只重启一次
// db.collection('config').where("ConfigID == 'ConfigID001'").update({
// RestartApp:"false",
// })
// .then((res) => {
// console.log(res)
// })
//重新启动
// plus.runtime.restart();
} else if (DownloadData.RestartApp === "false") {
console.log("退出")
//检测到标志量为false就退出程序
plus.runtime.quit();
} else {}
});
this.globalData.$i18n = this.$i18n
this.globalData.$t = str => this.$t(str)
initApp();
//js中初始化函数
process.CallbackconnectUDP();
// Underlying.ReadUpdateUnderlyingUDP();
process.funProcess.TimerStart1000ms();
process.funProcess.TimerStart100ms();
process.funProcess.TimerStart60s();
// 监听事件,使用 uni.$emit 触发事件后,对应的 uni.$on 就会监听到事件触发,在回调中去执行相关的逻辑。
uni.$on('PageJump', (info) => {
console.log(info);
//切换到视频播放页面
uni.redirectTo({
url: '/pages/video/video',
});
})
// //查询自动重启APP标志
// // const db = uniCloud.database();
// this.timer = setInterval(() => {
// db.collection('config').get().then((res) => {
// const DownloadData = res.result.data[0]
// //从数据库下载的数据
// this.RestartApp = DownloadData.RestartApp;
// if(this.RestartApp === 'true')
// {
// console.log(this.RestartApp);
// //确保只重启一次
// db.collection('config').where("ConfigID == 'ConfigID001'").update({
// RestartApp:'false',
// })
// .then((res) => {
// console.log(res)
// })
// //重新启动
// plus.runtime.restart();
// }
// });
// }, 5*60*1000);
},
onShow: function() {
console.log('App Show')
},
onHide: function() {
console.log('App Hide')
}
}
</script>
<style>
/*每个页面公共css */
</style>