国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

harmony-utils之AppUtil,APP相關工具類

童長老 ? 來源:童長老 ? 作者:童長老 ? 2025-06-26 09:24 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群


harmony-utils之AppUtil,APP相關工具類

harmony-utils 簡介與說明


harmony-utils 一款功能豐富且極易上手的HarmonyOS工具庫,借助眾多實用工具類,致力于助力開發者迅速構建鴻蒙應用。其封裝的工具涵蓋了APP、設備、屏幕、授權、通知、線程間通信、彈框、吐司、生物認證、用戶首選項、拍照、相冊、掃碼、文件、日志、異常捕獲、字符、字符串、數字、集合、日期、隨機、base64、加密、解密、JSON等一系列的功能和作,能夠滿足各種不同的開發需求。
picker_utils 是harmony-utils拆分出來的一個子庫,包含 PickerUtil、PhotoHelper、ScanUtil。

下載安裝
ohpm i @pura/harmony-utils
ohpm i @pura/picker_utils

//全局初始化方法,在UIAbility的onCreate方法中初始化 AppUtil.init()
 onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {
   AppUtil.init(this.context);
 }

API方法與使用


init 初始化方法,緩存全局變量,在UIAbility的onCreate方法中初始化該方法
onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {
    AppUtil.init(this.context);
  }
isApiSupported 檢查API版本是否安全
let bl = AppUtil.isApiSupported(18);
getApplicationContext 獲取ApplicationContext
let applicationContext = AppUtil.getApplicationContext();
getContext 獲取 UIContext
let uiContext = AppUtil.getUIContext();
getWindowStage 獲取WindowStage
let windowStage = AppUtil.getWindowStage();
  LogUtil.error(JSON.stringify(windowStage, null, 2));
getMainWindow 獲取主窗口
let mainWindow = AppUtil.getMainWindow();
getConfiguration 獲取應用的Configuration
let config = AppUtil.getConfiguration();
setGrayScale 設置灰階,APP一鍵置灰
AppUtil.setGrayScale(1);
setColorMode 設置應用的顏色模式。僅支持主線程調用。設置顏色模式,包括:深色模式、淺色模式、不設置(跟隨系統)
AppUtil.setColorMode(ConfigurationConstant.ColorMode.COLOR_MODE_LIGHT);
getColorMode 獲取應用的顏色模式
let colorMode = AppUtil.getColorMode();
  ToastUtil.showToast(`應用的顏色模式:${colorMode}`);
setFont 設置應用的字體類型。僅支持主線程調用
font.registerFont({ familyName: 'WCSF', familySrc: $rawfile('wcsf.ttf') });
  AppUtil.setFont('WCSF');
setFontSizeScale 設置應用字體大小縮放比例。僅支持主線程調用。
AppUtil.setFontSizeScale(1.8);
getFontSizeScale 獲取應用字體大小縮放比例
let fontSizeScale = AppUtil.getFontSizeScale();
  ToastUtil.showToast(`應用字體大小縮放比例:${fontSizeScale}`);
setLanguage 設置應用的語言
AppUtil.setLanguage('zh-cn');
getLanguage 獲取應用的語言
let language = AppUtil.getLanguage();
 ToastUtil.showToast(`應用的語言:${language}`);
setSupportedProcessCache 設置應用自身是否支持緩存后快速啟動
AppUtil.setSupportedProcessCache(true);
clearUpApplicationData 清理應用本身的數據,同時撤銷應用向用戶申請的權限
DialogHelper.showAlertDialog({
  content: '是否清理應用本身的數據?',
  primaryButton:'取消',
  secondaryButton:'清理',
  onAction: (action) = > {
    if (action === DialogAction.SURE) {
      AppUtil.clearUpApplicationData();
    }
  }
});
killAllProcesses 終止應用的所有進程,進程退出時不會正常走完應用生命周期
DialogHelper.showAlertDialog({
  content: '是否終止應用的所有進程?',
  primaryButton:'取消',
  secondaryButton:'終止',
  onAction: (action) = > {
    if (action === DialogAction.SURE) {
      AppUtil.killAllProcesses();
    }
  }
});
restartApp 重啟應用并拉起自身指定UIAbility。重啟時不會收到onDestroy回調
DialogHelper.showAlertDialog({
  autoCancel: false,
  backCancel: false,
  content: '是否重啟應用?',
  primaryButton:'取消',
  secondaryButton:'重啟',
  onAction: (action) = > {
    if (action === DialogAction.SURE) {
      AppUtil.restartApp();
    }
  }
});
exit 主動退出整個應用;調用該方法后,任務中心的任務默認不會清理,如需清理,需要配置removeMissionAfterTerminate為true
DialogHelper.showAlertDialog({
  content: '是否重退出應用?',
  primaryButton:'取消',
  secondaryButton:'退出',
  onAction: (action) = > {
    if (action === DialogAction.SURE) {
      AppUtil.exit();
    }
  }
});
getRunningProcessInformation 獲取有關運行進程的信息
let processInformation = await AppUtil.getRunningProcessInformation();
onApplicationStateChange 注冊對當前應用前后臺變化的監聽
private applicationStateChangeCallback: ApplicationStateChangeCallback = {
    onApplicationForeground() {
      LogUtil.warn('applicationStateChangeCallback onApplicationForeground');
    },
    onApplicationBackground() {
      LogUtil.warn('applicationStateChangeCallback onApplicationBackground');
    }
  };
  
  AppUtil.onApplicationStateChange(this.applicationStateChangeCallback);
offApplicationStateChange 取消對應用前后臺切換事件的監聽
AppUtil.offApplicationStateChange(this.applicationStateChangeCallback);
onEnvironment 注冊對系統環境變化的監聽
private environmentCallback: EnvironmentCallback = {
    onConfigurationUpdated(config) {
      LogUtil.warn(`onConfigurationUpdated config:n${JSON.stringify(config, null)}`);
    },
    onMemoryLevel(level) {
      LogUtil.warn(`onMemoryLevel level: ${level}`);
    }
  };
  
  this.callback1 = AppUtil.onEnvironment(this.environmentCallback);
offEnvironment 取消對系統環境變化的監聽
AppUtil.offEnvironment(this.callback1);
onAbilityLifecycle 注冊監聽應用內生命周期
private abilityLifecycleCallback: AbilityLifecycleCallback = {
    onAbilityCreate(ability) {
      LogUtil.info(`AbilityLifecycleCallback onAbilityCreate ability: ${ability}`);
    },
    onWindowStageCreate(ability, windowStage) {
      LogUtil.info(`AbilityLifecycleCallback onWindowStageCreate ability: ${ability}`);
      LogUtil.info(`AbilityLifecycleCallback onWindowStageCreate windowStage: ${windowStage}`);
    },
    onWindowStageActive(ability, windowStage) {
      LogUtil.info(`AbilityLifecycleCallback onWindowStageActive ability: ${ability}`);
      LogUtil.info(`AbilityLifecycleCallback onWindowStageActive windowStage: ${windowStage}`);
    },
    onWindowStageInactive(ability, windowStage) {
      LogUtil.info(`AbilityLifecycleCallback onWindowStageInactive ability: ${ability}`);
      LogUtil.info(`AbilityLifecycleCallback onWindowStageInactive windowStage: ${windowStage}`);
    },
    onWindowStageDestroy(ability, windowStage) {
      LogUtil.info(`AbilityLifecycleCallback onWindowStageDestroy ability: ${ability}`);
      LogUtil.info(`AbilityLifecycleCallback onWindowStageDestroy windowStage: ${windowStage}`);
    },
    onAbilityDestroy(ability) {
      LogUtil.info(`AbilityLifecycleCallback onAbilityDestroy ability: ${ability}`);
    },
    onAbilityForeground(ability) {
      LogUtil.info(`AbilityLifecycleCallback onAbilityForeground ability: ${ability}`);
    },
    onAbilityBackground(ability) {
      LogUtil.info(`AbilityLifecycleCallback onAbilityBackground ability: ${ability}`);
    },
    onAbilityContinue(ability) {
      LogUtil.info(`AbilityLifecycleCallback onAbilityContinue ability: ${ability}`);
    }
  };
  
  this.callback2 = AppUtil.onAbilityLifecycle(this.abilityLifecycleCallback);
offAbilityLifecycle 取消監聽應用內生命周期
AppUtil.offAbilityLifecycle(this.callback2);
getKeyboardAvoidMode 獲取虛擬鍵盤抬起時的頁面避讓模式(OFFSET-上抬模式、RESIZE-壓縮模式)
let mode = AppUtil.getKeyboardAvoidMode();
setKeyboardAvoidMode 設置虛擬鍵盤彈出時,頁面的避讓模式
AppUtil.setKeyboardAvoidMode(KeyboardAvoidMode.OFFSET)
isPortrait 當前設備是否以豎屏方式顯示
let isPortrait = AppUtil.isPortrait();
 ToastUtil.showToast(`當前是否豎屏: ${isPortrait}`);
isLandscape 當前設備是否以橫屏方式顯示
let isLandscape = AppUtil.isLandscape();
  ToastUtil.showToast(`當前是否橫屏: ${isLandscape}`);
getStatusBarHeight 獲取狀態欄的高度,單位為px
let statusBarHeight = AppUtil.getStatusBarHeight();
 ToastUtil.showToast(`狀態欄的高度為:${statusBarHeight}px`)
getNavigationIndicatorHeight 獲取底部導航條的高度,單位為px
let indicatorHeight = AppUtil.getNavigationIndicatorHeight();
 ToastUtil.showToast(`底部導航條的高度為:${indicatorHeight}px`)
setStatusBar 設置沉浸式狀態欄
AppUtil.setStatusBar();
getBundleInfo 獲取當前應用的BundleInfo
let bundleInfo = AppUtil.getAppInfoSync();
 let infoStr = JSON.stringify(bundleInfo, null, 2);
getAppInfo 獲取應用程序的配置信息
let appInfo = AppUtil.getAppInfoSync();
 let infoStr = JSON.stringify(appInfo, null, 2);
getSignatureInfo 獲取應用包的簽名信息
let signatureInfo = await AppUtil.getSignatureInfo();
 let infoStr = JSON.stringify(signatureInfo, null, 2);
getBundleName 獲取應用包的名稱
let bundleName = AppUtil.getBundleName();
getVersionCode 獲取應用版本號
let versionCode = AppUtil.getVersionCode();
getVersionName 獲取應用版本名
let versionName = AppUtil.getVersionName();
getTargetVersion 獲取應用運行目標版本
let targetVersion = AppUtil.getTargetVersion();
getInstallTime 應用包安裝時間
let installTime = AppUtil.getInstallTime();
getUpdateTime 應用包更新時間
let updateTime = AppUtil.getUpdateTime();
getAppProvisionType 獲取應用程序簽名證書文件的類型,分為debug和release兩種類型
let appProvisionType = AppUtil.getAppProvisionType();
debug 標識應用是否處于調試模式,取值為true表示應用處于調試模式,取值為false表示應用處于非調試模式
let debug = AppUtil.debug();

創作不易,請給童長老點贊

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • APP
    APP
    +關注

    關注

    33

    文章

    1589

    瀏覽量

    75690
  • 方舟
    +關注

    關注

    0

    文章

    20

    瀏覽量

    8766
  • HarmonyOS
    +關注

    關注

    80

    文章

    2147

    瀏覽量

    35687
  • 方舟編譯器
    +關注

    關注

    0

    文章

    63

    瀏覽量

    678
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    harmony-utilsAuthUtil,生物認證相關工具

    # harmony-utilsAuthUtil,生物認證相關工具 ## harmony-utils
    的頭像 發表于 06-26 17:43 ?353次閱讀

    harmony-utilsCacheUtil,緩存工具

    harmony-utilsCacheUtil,緩存工具
    的頭像 發表于 07-04 16:36 ?334次閱讀

    harmony-utilsCharUtil,字符工具

    harmony-utilsCharUtil,字符工具
    的頭像 發表于 07-04 16:34 ?353次閱讀

    harmony-utilsCrashUtil,異常相關工具

    harmony-utilsCrashUtil,異常相關工具
    的頭像 發表于 07-04 16:33 ?345次閱讀

    harmony-utilsDeviceUtil,設備相關工具

    harmony-utilsDeviceUtil,設備相關工具
    的頭像 發表于 07-03 18:27 ?435次閱讀

    harmony-utilsDisplayUtil,屏幕相關工具

    harmony-utilsDisplayUtil,屏幕相關工具
    的頭像 發表于 07-03 18:26 ?350次閱讀

    harmony-utilsFileUtil,文件相關工具

    harmony-utilsFileUtil,文件相關工具
    的頭像 發表于 07-03 18:23 ?407次閱讀

    harmony-utilsImageUtil,圖片相關工具

    harmony-utilsImageUtil,圖片相關工具
    的頭像 發表于 07-03 18:22 ?627次閱讀

    harmony-utilsLocationUtil,定位相關工具

    harmony-utilsLocationUtil,定位相關工具 harmony-utils
    的頭像 發表于 07-03 18:13 ?419次閱讀

    harmony-utilsNetworkUtil,網絡相關工具

    harmony-utilsNetworkUtil,網絡相關工具 harmony-utils
    的頭像 發表于 06-25 23:46 ?257次閱讀

    harmony-utilsPreviewUtil,文件預覽工具

    harmony-utilsPreviewUtil,文件預覽工具 harmony-utils 簡介與說明 [
    的頭像 發表于 07-03 11:40 ?384次閱讀

    harmony-utilsSnapshotUtil,截圖相關工具

    harmony-utilsSnapshotUtil,截圖相關工具 harmony-utils
    的頭像 發表于 07-03 11:36 ?398次閱讀

    harmony-utilsStrUtil,字符串工具

    harmony-utilsStrUtil,字符串工具 harmony-utils 簡介與說明 [ha
    的頭像 發表于 07-03 11:32 ?410次閱讀

    harmony-utilsTypeUtil,類型檢查工具

    harmony-utilsTypeUtil,類型檢查工具 harmony-utils 簡介與說明 [
    的頭像 發表于 06-30 17:35 ?405次閱讀

    harmony-utilsWindowUtil,窗口相關工具

    harmony-utilsWindowUtil,窗口相關工具 harmony-utils
    的頭像 發表于 06-30 17:33 ?410次閱讀