wangxy преди 1 месец
родител
ревизия
d4bac14faa
променени са 2 файла, в които са добавени 46 реда и са изтрити 12 реда
  1. 3 11
      pages/login/index.vue
  2. 43 1
      pages/study/index.vue

+ 3 - 11
pages/login/index.vue

@@ -81,13 +81,7 @@
 		error
 	} from "uview-plus";
 	import TipDialog from "@/components/dialog/tipDialog";
-	import {
-		useVersionUpdate
-	} from "@/utils/versionUpdate.js"
-
-	const {
-		showUpdateDialog
-	} = useVersionUpdate();
+  import {useVersionUpdate} from "@/utils/versionUpdate.js";
 
 	let indexData = reactive({
 		phoneNumber: null,
@@ -114,6 +108,7 @@
 	const tipDialogRef2 = ref(null)
 	const updateUrl = ref(null)
 
+  const { initDownload } = useVersionUpdate()
 
 	const store = useIsCanBack();
 	onUnload(() => {
@@ -186,10 +181,7 @@
 				plus.runtime.openURL(storeWebUrl, (webError) => {
 					console.error('网页链接失败', webError);
 					plus.runtime.openURL(updateUrl.value, (webError) => {
-						uni.showToast({
-							title: '跳转失败,请手动打开应用商店搜索更新',
-							icon: 'none'
-						});
+            initDownload(updateUrl.value)
 					});
 				});
 			});

+ 43 - 1
pages/study/index.vue

@@ -81,6 +81,7 @@
 	import shuxueNewZhangjie from './product/shuxueNew.vue';
 	import yingyuZhangjie from './product/yingyu.vue';
 	import yingyuNewZhangjie from './product/yingyuNew.vue';
+  import {useVersionUpdate} from "@/utils/versionUpdate.js";
 
 	import {
 		useTabBarHistory
@@ -144,6 +145,8 @@
 	const tipContentVersion = '您的APP不是最新版本,部分功能不能使用,请升级至最新版本!';
 	const tipContentVersionAndroid = '您的APP不是最新版本,部分功能不能使用,请升级至最新版本!'
 
+  const { initDownload } = useVersionUpdate()
+
 	onLoad((options) => {
 		init(options);
 		getLoginInit()
@@ -156,7 +159,46 @@
 			const appStoreUrl = 'itms-apps://itunes.apple.com/app/6741551741'
 			plus.runtime.openURL(appStoreUrl)
 		} else {
-			plus.runtime.openURL(updateUrl.value)
+      // 处理 Android/HarmonyOS 设备
+      const {
+        brand
+      } = systemInfo;
+      const androidPackage = 'com.llisoft.ezy'; // 安卓包名
+      let storeScheme = '';
+      let storeWebUrl = '';
+      switch (brand.toLowerCase()) {
+        case 'huawei':
+          storeScheme = `appmarket://details?id=${androidPackage}`;
+          storeWebUrl = `https://appgallery.huawei.com/app/C113217527`;
+          break;
+        case 'xiaomi':
+          storeScheme = `mimarket://app/detail?appId=${androidPackage}`;
+          storeWebUrl = `https://app.mi.com/details?id=${androidPackage}`;
+          break;
+        case 'oppo':
+          storeScheme = `oppomarket://details?packagename=${androidPackage}`;
+          storeWebUrl = `https://store.oppomobile.com/product?packagename=${androidPackage}`;
+          break;
+        case 'vivo':
+          storeScheme = `vivomarket://details?id=${androidPackage}`;
+          storeWebUrl = `https://appstore.vivo.com.cn/app/${androidPackage}`;
+          break;
+        case 'honor':
+          // 荣耀使用华为应用市场
+          storeScheme = `appmarket://details?id=${androidPackage}`;
+          storeWebUrl = `https://appgallery.huawei.com/app/C113217527`;
+          break;
+        default:
+      }
+      plus.runtime.openURL(storeScheme, (error) => {
+        console.log('调起应用商店失败,尝试网页链接', error);
+        plus.runtime.openURL(storeWebUrl, (webError) => {
+          console.error('网页链接失败', webError);
+          plus.runtime.openURL(updateUrl.value, (webError) => {
+            initDownload(updateUrl.value)
+          });
+        });
+      });
 		}
 	}