From de3edb50d18b549fc47adfc3dcc4f6833cbe04c4 Mon Sep 17 00:00:00 2001
From: 罗广辉 <guanghui.luo@foxmail.com>
Date: Mon, 17 Nov 2025 13:54:22 +0800
Subject: [PATCH] feat: 接入全局ws,接入腾讯音频通话

---
 src/App.vue |  154 +++++++++++++++++++--------------------------------
 1 files changed, 57 insertions(+), 97 deletions(-)

diff --git a/src/App.vue b/src/App.vue
index e7028be..83a564a 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -1,116 +1,76 @@
 <script setup>
-  import {onHide, onLaunch, onShow} from "@dcloudio/uni-app";
-  import {useAppStore, useUserStore} from "@/store";
-  import {genTestUserSig} from '@/utils/voiceCallByTX/GenerateTestUserSig.js';
+import {onHide, onLaunch, onShow} from "@dcloudio/uni-app";
+import {useAppStore, useUserStore} from "@/store";
+import {useGlobalWS} from "@/hooks/useGlobalWS.js";
 
+const appStore = useAppStore();
+const userStore = useUserStore();
 
+useGlobalWS()
 
-  const appStore = useAppStore();
-  const userStore = useUserStore();
-  const userId = computed(() => userStore?.userInfo?.user_id)
+onShow(() => {
+  console.log("App Show");
+});
 
+onHide(() => {
+  console.log("App Hide");
+});
 
-
-  onLaunch(() => {
-    // 初始化系统信息
-    appStore.initSystemInfo();
-
-    if (!userStore.userInfo) {
-      //不存在则跳转至登录页
-      uni.reLaunch({
-        url: "/pages/login/index",
-      })
-    }
-  });
-
-  // #ifdef APP-PLUS
-  import TrtcCloud from '@/utils/voiceCallByTX/TrtcCloud/lib/index';
-  import { TRTCAppScene } from '@/utils/voiceCallByTX/TrtcCloud/lib/TrtcDefines';
-  const trtcCloud = TrtcCloud.createInstance();
-  function enterRoomFun() {
-    const {userSig, SDKAppID} = genTestUserSig(userId.value);
-    const params = {sdkAppId: SDKAppID, userId: userId.value, roomId: 789456, userSig: userSig};
-    trtcCloud.enterRoom(params, TRTCAppScene.TRTCAppSceneVideoCall)
-    trtcCloud.startLocalAudio();
+onLaunch(() => {
+  // 初始化系统信息
+  appStore.initSystemInfo();
+  if (!userStore.userInfo) {
+    //不存在则跳转至登录页
+    uni.reLaunch({
+      url: "/pages/login/index",
+    })
   }
-  // #endif
-
-  // #ifdef H5
-  import TRTC from 'trtc-sdk-v5';
-  const trtc = TRTC.create();
-  function enterRoomFunByH5() {
-    const {userSig, SDKAppID} = genTestUserSig(userId.value);
-    trtc.enterRoom({ sdkAppId:SDKAppID, userId:userId.value, userSig, roomId: 789456 })
-    trtc.startLocalAudio()
-  }
-  // #endif
-
-  // 初始化登陆腾讯音频平台
-  watch(userId, () => {
-    if (!userId.value) return
-    // #ifdef APP-PLUS
-    // enterRoomFun()
-    // #endif
-    // #ifdef H5
-    // enterRoomFunByH5()
-    // #endif
-
-  }, {
-    immediate: true
-  })
-
-  onShow(() => {
-    console.log("App Show");
-  });
-
-  onHide(() => {
-    console.log("App Hide");
-  });
+});
 </script>
 
 <style lang="scss">
-  /* 每个页面公共css */
-  @import "uview-plus/index.scss";
-  @import "@/static/styles/common.scss";
+/* 每个页面公共css */
+@import "uview-plus/index.scss";
+@import "@/static/styles/common.scss";
 
-  .TUICallKit-mobile {
-    position: fixed;
-    left: 0;
-    top: 0;
-    z-index: 9999;
-  }
+.TUICallKit-mobile {
+  position: fixed;
+  left: 0;
+  top: 0;
+  z-index: 9999;
+}
 
-  page {
-    background-image: url('~@/static/images/user/bg.png');
-    background-size: cover;
-    background-position: center;
-    background-repeat: no-repeat;
-    background-attachment: fixed;
-    // min-height: 10vh;
-  }
+page {
+  background-image: url('~@/static/images/user/bg.png');
+  background-size: cover;
+  background-position: center;
+  background-repeat: no-repeat;
+  background-attachment: fixed;
+  // min-height: 10vh;
+}
 
-  .uni-tabbar__item:nth-child(4) {
-    .uni-tabbar__bd {
-      .uni-tabbar__icon {
-        width: 60px !important;
-        height: 60px !important;
-        margin-top: -20px;
-      }
+.uni-tabbar__item:nth-child(4) {
+  .uni-tabbar__bd {
+    .uni-tabbar__icon {
+      width: 60px !important;
+      height: 60px !important;
+      margin-top: -20px;
     }
   }
+}
 
-  .uni-tabbar-border {
-    background-color: #f6f6f6 !important;
-  }
+.uni-tabbar-border {
+  background-color: #f6f6f6 !important;
+}
 
-  .uni-page-head__title {
-    font-family: Source Han Sans CN, Source Han Sans CN !important;
-    font-weight: 400 !important;
-    font-size: 17px !important;
-    color: #222324 !important;
-  }
+.uni-page-head__title {
+  font-family: Source Han Sans CN, Source Han Sans CN !important;
+  font-weight: 400 !important;
+  font-size: 17px !important;
+  color: #222324 !important;
+}
 
-  .uni-page-head {
-    background: transparent !important;
-  }
+.uni-page-head {
+  background: transparent !important;
+}
 </style>

--
Gitblit v1.9.3