HarmonyOS 获取系统相册中图片数量和时间相册中不符合。

代码:

let frSys = await this.phAccessHelper!.getAlbums(photoAccessHelper.AlbumType.SYSTEM, photoAccessHelper.AlbumSubtype.ANY);
let predicates: dataSharePredicates.DataSharePredicates = new dataSharePredicates.DataSharePredicates();
let fetchOption: photoAccessHelper.FetchOptions = {
  fetchColumns: [],
  predicates: predicates
};
if(frSys != undefined){
  let al = await frSys.getAllObjects();
  for (let album of al) {
    let  p: Map<string, Object> = new Map();
    p.set("albumId", album.albumUri);
    p.set("albumName", album.albumName);
    p.set("count", album.count);
    p.set("thumbPath",album.coverUri);
    p.set("thumbIdentifier", "");
    let albumFetchResult =  await album.getAssets(fetchOption);
    if(albumFetchResult != undefined){
      console.info('album getAssets successfully, getCount: ' + albumFetchResult.getCount());
    }
    albumList.push(p);
  }
  frSys.close();
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.

其中得到的数量都是0,系统相册数量是8。获取用户相册正常。(photoAccessHelper.AlbumType.USER)

HarmonyOS
2025-01-10 08:37:52
585浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
FengTianYa

没有问题。phAccessHelper.getAlbums只能获取用户创建的相册和系统预置相册。而系统预置相册,只有两个,根据类型分别是FAVORITE和VIDEONEXT版本中系统图库中的【图片】相册并不是一个物理意思上的相册文件,它是系统图库中图片的合集,所以通过phAccessHelper.getAlbums获取相册对象是无法获取到该合集的。

分享
微博
QQ
微信
回复
2025-01-10 10:36:06


相关问题
HarmonyOS 不符合UI组件语法
802浏览 • 1回复 待解决
HarmonyOS BlendMode显示效果不符合预期
714浏览 • 1回复 待解决
点击事件冒泡不符合预期
1280浏览 • 1回复 待解决
HarmonyOS 3DES的key长度不符合
569浏览 • 1回复 待解决
元服务UI不符合设计规范?
167浏览 • 0回复 待解决
RichText组件font标签size属性不符合预期
2513浏览 • 1回复 待解决
HarmonyOS 用户相册系统相册概念
570浏览 • 1回复 待解决
如何读取相册图片
1475浏览 • 1回复 待解决
HarmonyOS 获取系统相册报错
766浏览 • 1回复 待解决
HarmonyOS 获取相册里的图片视频ID
470浏览 • 1回复 待解决
HarmonyOS 应用跳转系统相册
572浏览 • 1回复 待解决
HarmonyOS 保存图片系统相册
832浏览 • 1回复 待解决
如何编辑裁剪相册图片
1503浏览 • 1回复 待解决
如何保存本地图片相册
1994浏览 • 1回复 待解决
HarmonyOS App获取相册图片的问题
734浏览 • 1回复 待解决
HarmonyOS 如何获取系统相册的数据
477浏览 • 1回复 待解决