app.js 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. /**
  2. * 应用信息工具类
  3. */
  4. import versionConfig from '@/config/version.js'
  5. export default {
  6. /**
  7. * 同步获取应用版本号
  8. * @returns {string} 版本号
  9. */
  10. getVersionSync() {
  11. try {
  12. const systemInfo = uni.getSystemInfoSync()
  13. console.log(systemInfo,'systemInfosystemInfo')
  14. // #ifdef APP-PLUS
  15. // App 端优先使用 plus API
  16. return plus.runtime.version
  17. // #endif
  18. // 小程序和 H5 端使用 uni.getSystemInfoSync
  19. if (systemInfo.version) {
  20. return systemInfo.version
  21. }
  22. // 如果获取不到,返回配置文件的版本号
  23. return versionConfig.getVersionName()
  24. } catch (e) {
  25. // 出错时返回配置文件的版本号
  26. return versionConfig.getVersionName()
  27. }
  28. },
  29. /**
  30. * 异步获取应用版本号
  31. * @returns {Promise<string>} 版本号
  32. */
  33. getVersion() {
  34. return new Promise((resolve) => {
  35. try {
  36. uni.getSystemInfo({
  37. success: (res) => {
  38. // #ifdef APP-PLUS
  39. // App 端优先使用 plus API
  40. resolve(plus.runtime.version)
  41. // #endif
  42. // #ifndef APP-PLUS
  43. if (res.version) {
  44. resolve(res.version)
  45. } else {
  46. resolve(versionConfig.getVersionName())
  47. }
  48. // #endif
  49. },
  50. fail: () => {
  51. resolve(versionConfig.getVersionName())
  52. }
  53. })
  54. } catch (e) {
  55. resolve(versionConfig.getVersionName())
  56. }
  57. })
  58. }
  59. }