warrior 1 өдөр өмнө
parent
commit
8874d2a712

+ 1 - 0
android/app/capacitor.build.gradle

@@ -10,6 +10,7 @@ android {
 apply from: "../capacitor-cordova-android-plugins/cordova.variables.gradle"
 dependencies {
     implementation project(':capacitor-app')
+    implementation project(':capacitor-browser')
     implementation project(':capacitor-camera')
     implementation project(':capacitor-filesystem')
     implementation project(':capacitor-haptics')

+ 3 - 0
android/capacitor.settings.gradle

@@ -5,6 +5,9 @@ project(':capacitor-android').projectDir = new File('../node_modules/@capacitor/
 include ':capacitor-app'
 project(':capacitor-app').projectDir = new File('../node_modules/@capacitor/app/android')
 
+include ':capacitor-browser'
+project(':capacitor-browser').projectDir = new File('../node_modules/@capacitor/browser/android')
+
 include ':capacitor-camera'
 project(':capacitor-camera').projectDir = new File('../node_modules/@capacitor/camera/android')
 

+ 1 - 1
capacitor.config.ts

@@ -3,7 +3,7 @@ import type { CapacitorConfig } from '@capacitor/cli';
 const config: CapacitorConfig = {
   appId: 'com.heychat.live',
   appName: 'hey聊',
-  webDir: 'www',
+  webDir: 'www/browser',
   android: {
     buildOptions: {
       releaseType: 'APK',

BIN
projects/live-app/public/img/版本管理.png


+ 6 - 1
projects/live-app/src/app/app.component.ts

@@ -10,6 +10,7 @@ import * as icons from 'ionicons/icons';
 addIcons(icons)
 import { SafariViewController } from '@ionic-native/safari-view-controller/ngx';
 import { UpdateService } from '../services/update.service';
+// import { ConnectTaskService } from '../services/connectTask.service';
 @Component({
   selector: 'app-root',
   standalone: true,
@@ -24,6 +25,9 @@ export class AppComponent implements OnInit {
   // onvisibilitychange(event) {
   //   let isExits = event.target.visibilityState
   //     if (isExits == 'visible') {
+  //       if(Parse.User.current()?.id){
+  //         this.connectTask.init();
+  //       }
   //       console.log('进入该页面')
   //     } else {
   //       console.log('离开该页面')
@@ -32,7 +36,8 @@ export class AppComponent implements OnInit {
   constructor(
     private router: Router,
     private updateServ:UpdateService,
-    private backgroundColorService: BackgroundColorService
+    private backgroundColorService: BackgroundColorService,
+    // private connectTask: ConnectTaskService,
   ) {
     this.initParseService();
     this.initStatusBar();

+ 9 - 0
projects/live-app/src/modules/tabs/my/my.component.html

@@ -288,6 +288,15 @@
           <ion-icon name="chevron-forward-outline"></ion-icon>
         </div>
       </div>
+      <div class="li" (click)="updateVersion()">
+        <div class="li-lable">
+          <img src="img/版本管理.png" alt="" class="icon" />
+        </div>
+        <div class="li-val">
+          版本更新
+          <ion-icon name="chevron-forward-outline"></ion-icon>
+        </div>
+      </div>
       <!-- @for (item of settings; track $index) {
       <div class="li">
         <div class="li-lable">

+ 6 - 1
projects/live-app/src/modules/tabs/my/my.component.ts

@@ -12,6 +12,7 @@ import { DatePipe, CommonModule } from '@angular/common';
 import { AvatarComponent } from '../../../app/components/avatar/avatar.component';
 import { HttpService } from '../../../services/http.service';
 import { DeviceService } from '../../../services/device.service';
+import { UpdateService } from '../../../services/update.service';
 @Component({
   selector: 'app-my',
   templateUrl: './my.component.html',
@@ -34,7 +35,8 @@ export class MyComponent implements OnInit {
     public aiServ: AiChatService,
     private accServ: AccountService,
     private http: HttpService,
-    public deviceSer:DeviceService
+    public deviceSer:DeviceService,
+    private updateServ:UpdateService,
   ) {}
   tools: Array<{ icon: string; title: string; path: string }> = [
     {
@@ -270,4 +272,7 @@ export class MyComponent implements OnInit {
     console.log(article?.id);
     this.router.navigate(['webview',{id:article?.id}]);
   }
+  updateVersion(){
+    this.updateServ.updateVersion(true)
+  }
 }

+ 36 - 36
projects/live-app/src/services/message.service.ts

@@ -326,42 +326,42 @@ export class MessageService {
   //   }, 5000);
   // }
 
-  playGift(giftModule: any) {
-    console.log(giftModule);
-    this.isPlayer = true;
-    let dom = document.getElementById('vap-gift');
-    console.log(dom);
-    let vapPlayer = VapInit({
-      container: dom, // 要渲染的载体,dom元素
-      src: giftModule.gift?.video, // vap动画地址
-      config: giftModule.gift?.config, // 播放vap动画需要的 json文件。必填
-      width: window.innerWidth, // 容器宽度
-      height: window.innerHeight, // 容器高度
-      fps: 30, // 帧数,json文件中有这个视频的帧数的,可以看一下,
-      mute: false, // 静音
-      type: 1, // 组件基于type字段做了实例化缓存,不同的VAP实例应该使用不同的type值(如0、1、2等)
-      loop: false, // 循环
-      precache: true, // 预加载视频,下载完再播。小动画建议边下边播,大动画还是先下后播吧,因为太大了或者网络不好,会一卡一卡的。
-      beginPoint: 0, // 起始播放时间点(单位秒),在一些浏览器中可能无效
-      accurate: true, // 是否启用精准模式(使用requestVideoFrameCallback提升融合效果,浏览器不兼容时自动降级)
-    });
-    vapPlayer.play(); // 开始播放
-    vapPlayer.on('ended', () => {
-      // 监听播放完成的事件
-      vapPlayer.destroy();
-      vapPlayer = null;
-      console.log('播放结束');
-      this.giftLogMap.pop();
-      if (this.giftLogMap.length > 0) {
-        this.playGift(this.giftLogMap.slice(-1)[0]);
-      } else {
-        this.isPlayer = false;
-      }
-    });
-    vapPlayer.on('playering', function () {
-      console.log('playering');
-    });
-  }
+  // playGift(giftModule: any) {
+  //   console.log(giftModule);
+  //   this.isPlayer = true;
+  //   let dom = document.getElementById('vap-gift');
+  //   console.log(dom);
+  //   let vapPlayer = VapInit({
+  //     container: dom, // 要渲染的载体,dom元素
+  //     src: giftModule.gift?.video, // vap动画地址
+  //     config: giftModule.gift?.config, // 播放vap动画需要的 json文件。必填
+  //     width: window.innerWidth, // 容器宽度
+  //     height: window.innerHeight, // 容器高度
+  //     fps: 30, // 帧数,json文件中有这个视频的帧数的,可以看一下,
+  //     mute: false, // 静音
+  //     type: 1, // 组件基于type字段做了实例化缓存,不同的VAP实例应该使用不同的type值(如0、1、2等)
+  //     loop: false, // 循环
+  //     precache: true, // 预加载视频,下载完再播。小动画建议边下边播,大动画还是先下后播吧,因为太大了或者网络不好,会一卡一卡的。
+  //     beginPoint: 0, // 起始播放时间点(单位秒),在一些浏览器中可能无效
+  //     accurate: true, // 是否启用精准模式(使用requestVideoFrameCallback提升融合效果,浏览器不兼容时自动降级)
+  //   });
+  //   vapPlayer.play(); // 开始播放
+  //   vapPlayer.on('ended', () => {
+  //     // 监听播放完成的事件
+  //     vapPlayer.destroy();
+  //     vapPlayer = null;
+  //     console.log('播放结束');
+  //     this.giftLogMap.pop();
+  //     if (this.giftLogMap.length > 0) {
+  //       this.playGift(this.giftLogMap.slice(-1)[0]);
+  //     } else {
+  //       this.isPlayer = false;
+  //     }
+  //   });
+  //   vapPlayer.on('playering', function () {
+  //     console.log('playering');
+  //   });
+  // }
 
   async getRoom(uid: string): Promise<string | undefined> {
     let query = new Parse.Query('Room');

+ 17 - 4
projects/live-app/src/services/update.service.ts

@@ -36,13 +36,13 @@ export class UpdateService {
   //     }
   //   return
   // }
-  updateVersion() {
-    console.log('updateversion', this.isIOS , this.isAndroid);
+  updateVersion(auto?:boolean) {
+    // console.log('updateversion', this.isIOS , this.isAndroid);
     if (this.platform.is('hybrid') && (this.isIOS || this.isAndroid)) {
-      this.checkUpdate();
+      this.checkUpdate(auto);
     }
   }
-  async checkUpdate() {
+  async checkUpdate(auto?:boolean) {
     let appInfo = await App.getInfo();
     let appId = appInfo.id;
     if (!appId) {
@@ -108,6 +108,19 @@ export class UpdateService {
           });
           confirm.present();
         } else {
+          if (auto) {
+            this.alertCtrl.create({
+              header: '已是最新版本',
+              message: `当前版本 ${res.version}`,
+              backdropDismiss: false,
+              buttons: [
+                {
+                  text: '确定',
+                  handler: async () => {},
+                },
+              ],
+            });
+          }
         }
       },
       (err) => {}