HarmonyOS 如何获取相册中照片或者录制的视频的相关属性,比如长宽,大小等

HarmonyOS
7天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
aquaa

获取视频的相关属性如下方法:

async  uriGetAssets(fileUri:string) {
  try {
    let phAccessHelper = photoAccessHelper.getPhotoAccessHelper(this.context);
    let predicates: dataSharePredicates.DataSharePredicates = new dataSharePredicates.DataSharePredicates();
    // 配置查询条件,使用PhotoViewPicker选择图片返回的uri进行查询
    predicates.equalTo('uri', fileUri);
    let fetchOption: photoAccessHelper.FetchOptions = {
      fetchColumns: ['duration'],
      predicates: predicates
    };
    let fetchResult: photoAccessHelper.FetchResult<photoAccessHelper.PhotoAsset> = await phAccessHelper.getAssets(fetchOption);
    // 得到uri对应的PhotoAsset对象,读取文件的部分信息
    const asset: photoAccessHelper.PhotoAsset = await fetchResult.getFirstObject();
    console.info('asset displayName: ', asset.displayName);
    console.info('asset uri: ', asset.uri);
    console.info('asset photoType: ', asset.photoType);
    // 获取时长
    let duration: photoAccessHelper.PhotoKeys = photoAccessHelper.PhotoKeys.DURATION;
    let photoAssetDuration: photoAccessHelper.MemberType = asset.get(duration.toString());
    console.info('asset duration: ', photoAssetDuration);

    // 获取缩略图
    asset.getThumbnail((err, pixelMap) => {
      if (err == undefined) {
        this.pixelMap = pixelMap
        console.info('getThumbnail successful ' + JSON.stringify(pixelMap));
      } else {
        console.error('getThumbnail fail', err);
      }
    });
  } catch (error){
    console.error('uriGetAssets failed with err: ' + JSON.stringify(error));
  }
}

获取图片的相关属性,可以读取相册图片属性,方法和读取视频类似:

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-photoaccesshelper-V5#photokeys

备用接口如下文档:

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-image-V5#getimageinfo7

分享
微博
QQ
微信
回复
7天前
相关问题
HarmonyOS 视频录制相关问题
477浏览 • 0回复 待解决
HarmonyOS 删除相册某一照片
154浏览 • 1回复 待解决
如何录制视频并设置最大录制时长?
198浏览 • 0回复 待解决
需要视频录制、压缩demo
299浏览 • 1回复 待解决
HarmonyOS获取相册视频宽高问题
592浏览 • 1回复 待解决
HarmonyOS 获取相册图片和视频ID
101浏览 • 1回复 待解决