|
@@ -0,0 +1,65 @@
|
|
|
|
|
+/**
|
|
|
|
|
+ * 应用信息工具类
|
|
|
|
|
+ */
|
|
|
|
|
+import versionConfig from '@/config/version.js'
|
|
|
|
|
+
|
|
|
|
|
+export default {
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 同步获取应用版本号
|
|
|
|
|
+ * @returns {string} 版本号
|
|
|
|
|
+ */
|
|
|
|
|
+ getVersionSync() {
|
|
|
|
|
+ try {
|
|
|
|
|
+ const systemInfo = uni.getSystemInfoSync()
|
|
|
|
|
+
|
|
|
|
|
+ console.log(systemInfo,'systemInfosystemInfosystemInfo')
|
|
|
|
|
+ // #ifdef APP-PLUS
|
|
|
|
|
+ // App 端优先使用 plus API
|
|
|
|
|
+ return plus.runtime.version
|
|
|
|
|
+ // #endif
|
|
|
|
|
+
|
|
|
|
|
+ // 小程序和 H5 端使用 uni.getSystemInfoSync 的 appVersion 字段
|
|
|
|
|
+ if (systemInfo.appVersion) {
|
|
|
|
|
+ return systemInfo.appVersion
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ // 如果获取不到,返回配置文件的版本号
|
|
|
|
|
+ return versionConfig.getVersionName()
|
|
|
|
|
+ } catch (e) {
|
|
|
|
|
+ // 出错时返回配置文件的版本号
|
|
|
|
|
+ return versionConfig.getVersionName()
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 异步获取应用版本号
|
|
|
|
|
+ * @returns {Promise<string>} 版本号
|
|
|
|
|
+ */
|
|
|
|
|
+ getVersion() {
|
|
|
|
|
+ return new Promise((resolve) => {
|
|
|
|
|
+ try {
|
|
|
|
|
+ uni.getSystemInfo({
|
|
|
|
|
+ success: (res) => {
|
|
|
|
|
+ // #ifdef APP-PLUS
|
|
|
|
|
+ // App 端优先使用 plus API
|
|
|
|
|
+ resolve(plus.runtime.version)
|
|
|
|
|
+ // #endif
|
|
|
|
|
+
|
|
|
|
|
+ // #ifndef APP-PLUS
|
|
|
|
|
+ if (res.appVersion) {
|
|
|
|
|
+ resolve(res.appVersion)
|
|
|
|
|
+ } else {
|
|
|
|
|
+ resolve(versionConfig.getVersionName())
|
|
|
|
|
+ }
|
|
|
|
|
+ // #endif
|
|
|
|
|
+ },
|
|
|
|
|
+ fail: () => {
|
|
|
|
|
+ resolve(versionConfig.getVersionName())
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ } catch (e) {
|
|
|
|
|
+ resolve(versionConfig.getVersionName())
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ }
|
|
|
|
|
+}
|