在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

harmony-utils之PreviewUtil,文件預覽工具類

童長老 ? 來源:jf_14594073 ? 作者:jf_14594073 ? 2025-07-03 11:40 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

harmony-utils之PreviewUtil,文件預覽工具類

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方法與使用


generatePreviewInfo 根據文件uri構建PreviewInfo
let docPath = FileUtil.getFilesDirPath("download/wps/doc', "測試DOC文件.doc");
 FileUtil.writeEasy(docPath, "harmony-utils 一款高效的OpenHarmony/HarmonyOS工具包。幫助開發者快速構建鴻蒙應用。");
 let uri = FileUtil.getUriFromPath(docPath);
 let info = PreviewUtil.generatePreviewInfo(uri);
 let infoStr = JSON.stringify(info, null, 2);
 LogUtil.error(infoStr);
openPreview 通過傳入文件預覽信息,打開預覽窗口。1秒內重復調用無效
let docPath = FileUtil.getFilesDirPath("download/wps/doc', "測試DOC文件.doc");
 let uri = FileUtil.getUriFromPath(docPath);
 let info = PreviewUtil.generatePreviewInfo(uri);
 PreviewUtil.openPreview(info).catch((error: BusinessError) = > {
  LogUtil.error(`onSharePreview-異常 ~ code: ${error.code} -·- message: ${error.message}`);
 });
openPreviewEasy 通過傳入文件的uri,打開預覽窗口。1秒內重復調用無效
let docPath = FileUtil.getFilesDirPath("download/wps/doc', "測試DOC文件.doc");
 let uri = FileUtil.getUriFromPath(docPath);
 PreviewUtil.openPreviewEasy(uri);
canPreview 根據文件的uri判斷文件是否可預覽
let docPath = FileUtil.getFilesDirPath("download/wps/doc', "測試DOC文件.doc");
 let uri = FileUtil.getUriFromPath(docPath);
 let canPreview = await PreviewUtil.canPreview(uri);
 ToastUtil.showToast(`canPreview: ${canPreview}`);
hasDisplayed 判斷預覽窗口是否已經存在
let hasDisplayed = await PreviewUtil.hasDisplayed();
 ToastUtil.showToast(`hasDisplayed: ${hasDisplayed}`);
closePreview 關閉預覽窗口,僅當預覽窗口存在時起效
PreviewUtil.closePreview().then(() = > {
  ToastUtil.showToast("已關閉預覽");
});
loadData 加載預覽文件信息。僅當預覽窗口存在時起效
let docPath = FileUtil.getFilesDirPath("download/wps/doc', "測試DOC文件.doc");
let uri = FileUtil.getUriFromPath(docPath);
let info = PreviewUtil.generatePreviewInfo(uri);
let hasDisplayed = await PreviewUtil.hasDisplayed();
if (hasDisplayed) {
  PreviewUtil.loadData(info);
} else {
  PreviewUtil.openPreview(info);
}
loadDataEasy 加載預覽文件信息。僅當預覽窗口存在時起效
let docPath = FileUtil.getFilesDirPath("download/wps/doc', "測試DOC文件.doc");
let uri = FileUtil.getUriFromPath(docPath);
let hasDisplayed = await PreviewUtil.hasDisplayed();
if (hasDisplayed) {
  PreviewUtil.loadDataEasy(uri);
} else {
  PreviewUtil.openPreviewEasy(uri);
}
onSharePreview 調用其他應用預覽文件
let docPath = FileUtil.getFilesDirPath("download/wps/doc', "測試DOC文件.doc");
let uri = FileUtil.getUriFromPath(docPath);
PreviewUtil.onSharePreview(uri).catch((error: BusinessError) = > {
  ToastUtil.showToast("打開文件失敗," + error.message);
  LogUtil.error(`onSharePreview-異常 ~ code: ${error.code} -·- message: ${error.message}`);
});
getTypeDescriptor 根據文件后綴名獲取TypeDescriptor(標準化數據類型的描述類)
let typeDescriptor = PreviewUtil.getTypeDescriptor("png");
ToastUtil.showToast(`${typeDescriptor.mimeTypes}`);
getMimeType 根據文件后綴名獲取文件mimeType
let mimeType = PreviewUtil.getMimeType("png");
let mimeType2 = PreviewUtil.getMimeType("txt");
ToastUtil.showToast(`${mimeType} --- ${mimeType2}`);
getIconFileStr 根據文件后綴名獲取對應文件類型的圖標
let iconFileStr = PreviewUtil.getIconFileStr("doc");
let iconRes: Resource = $r(iconFileStr);
canIUsePreview 判斷當前設備是否支持文件預覽能力
let bl = PreviewUtil.canIUsePreview();
 ToastUtil.showToast(`當前設備是否支持文件預覽能力:${bl}`);

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

審核編輯 黃宇

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

    關注

    0

    文章

    104

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    harmony-utilsArrayUtil,集合工具

    # harmony-utilsArrayUtil,集合工具 ## harmony-utils 簡介與說明 ------[
    的頭像 發表于 06-26 17:38 ?95次閱讀

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

    # harmony-utilsAuthUtil,生物認證相關工具 ## harmony-utils 簡介與說明 ------[
    的頭像 發表于 06-26 17:43 ?89次閱讀

    harmony-utilsCacheUtil,緩存工具

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

    harmony-utilsCharUtil,字符工具

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

    harmony-utilsCrashUtil,異常相關工具

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

    harmony-utilsDateUtil,日期工具

    harmony-utilsDateUtil,日期工具
    的頭像 發表于 06-25 22:15 ?29次閱讀

    harmony-utilsDeviceUtil,設備相關工具

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

    harmony-utilsDisplayUtil,屏幕相關工具

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

    harmony-utilsEmitterUtil,Emitter工具

    harmony-utilsEmitterUtil,Emitter工具
    的頭像 發表于 07-03 18:24 ?113次閱讀

    harmony-utilsFileUtil,文件相關工具

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

    harmony-utilsFormatUtil,格式化工具

    harmony-utilsFormatUtil,格式化工具
    的頭像 發表于 07-03 18:22 ?111次閱讀

    harmony-utilsImageUtil,圖片相關工具

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

    harmony-utilsNumberUtil,Number工具

    harmony-utilsNumberUtil,Number工具 harmony-utils 簡介與說明
    的頭像 發表于 07-03 18:08 ?115次閱讀

    harmony-utilsStrUtil,字符串工具

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

    harmony-utilsTypeUtil,類型檢查工具

    harmony-utilsTypeUtil,類型檢查工具 harmony-utils 簡介與說明 [
    的頭像 發表于 06-30 17:35 ?89次閱讀
    主站蜘蛛池模板: 亚洲va老文色欧美黄大片人人 | 欧美色视频超清在线观看 | 中国一级特黄特级毛片 | 黄色香蕉网 | 久久黄色视屏 | 欧美天天综合 | 中文字幕天天躁夜夜狠狠综合 | 成人亚洲视频 | 国外精品视频在线观看免费 | 久草视频在线免费看 | 91大神在线看 | 五月六月伊人狠狠丁香网 | 一级女人毛片人一女人 | 精品videosex性欧美 | 亚洲人色大成年网站在线观看 | 免费播放欧美毛片欧美aaaaa | 亚洲国产成人成上人色 | 美女牲交视频一级毛片 | 黄色大秀视频 | 被男同桌摸内裤好爽视频 | 91av在线免费观看 | 天天干在线影院 | 国产精品久久久久免费 | 欧洲精品码一区二区三区免费看 | 男女免费网站 | 日本高清中文字幕在线观穿线视频 | 大量国产后进翘臀视频 | 狠狠色狠狠色综合婷婷tag | 欧美性淫爽www视频播放 | 久草资源网 | 美国69bj| 丝袜紧身裙国产在线播放 | 五月天婷婷基地 | 华人永久免费视频 | 精品视频在线观看视频免费视频 | 天天爱天天做色综合 | 亚洲伦理一区二区三区 | 黄色大片免费观看 | 经典三级一区在线播放 | 四虎院影永久在线观看 | 久久精品在 |