咨询获取图片或视频资源的信息,如分辨率,时长,缩略图的方法(HarmonyOS 鸿蒙Next)

咨询获取图片或视频资源的信息,如分辨率,时长,缩略图的方法(HarmonyOS 鸿蒙Next) 【设备信息】Mate60

【API版本】Api13

【DevEco Studio版本】5.0.7.200

【问题描述】

项目中需要使用URI获取图片或视频资源的信息,如分辨率,时长,缩略图等,我使用了phAccessHelper.getAssets这个方法,显示需要用到受限权限:ohos.permission.READ_IMAGEVIDEO,但是我并没有申请,就可以正常使用,只是编译时有如下警告:

To use this API, you need to apply for the permissions: ohos.permission.READ_IMAGEVIDEO

现在项目使用了企业打包方式,打出来的包也可以正常使用这个功能。

现在有三个问题咨询一下:

1.请问企业打包时,是否可以不申请ohos.permission.READ_IMAGEVIDEO就能使用这个功能?

2.有没有别的方案来实现获取图片或视频资源的信息,如分辨率,时长,缩略图?

3.申请的流程需要多久时间,会影响发布时间吗?


更多关于咨询获取图片或视频资源的信息,如分辨率,时长,缩略图的方法(HarmonyOS 鸿蒙Next)的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于咨询获取图片或视频资源的信息,如分辨率,时长,缩略图的方法(HarmonyOS 鸿蒙Next)的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next中,获取图片或视频资源的信息可以通过MediaLibrary API实现。对于图片,可以使用Image类获取分辨率、缩略图等信息。对于视频,可以使用Video类获取时长、分辨率等信息。具体方法如下:

  1. 获取图片信息

    • 使用MediaLibrary.getImageInfo()获取图片的分辨率、缩略图等。
    • Image.getWidth()Image.getHeight()用于获取图片的宽度和高度。
    • Image.getThumbnail()用于获取图片的缩略图。
  2. 获取视频信息

    • 使用MediaLibrary.getVideoInfo()获取视频的时长、分辨率等。
    • Video.getDuration()用于获取视频的时长。
    • Video.getWidth()Video.getHeight()用于获取视频的分辨率。

示例代码:

import mediaLibrary from '@ohos.multimedia.mediaLibrary';

// 获取图片信息
let imageInfo = mediaLibrary.getImageInfo(imageUri);
let width = imageInfo.getWidth();
let height = imageInfo.getHeight();
let thumbnail = imageInfo.getThumbnail();

// 获取视频信息
let videoInfo = mediaLibrary.getVideoInfo(videoUri);
let duration = videoInfo.getDuration();
let videoWidth = videoInfo.getWidth();
let videoHeight = videoInfo.getHeight();
回到顶部