HarmonyOS如何获取用户相册所有目录?
鸿蒙如何获取用户相册所有目录?
业务场景:需要读取到当前用户下的所有图片,实现应用内部自定义图片列表,双框架可以通过云闪付登录后,首页右上角扫一扫 —> 相册进入
通过photoAccessHelper,本地跑不通[nodict]MediaLibraryNapiUtils:{HandleError:641} Error: GetPhotoAlbums medialibrary inner fail, js errcode:14000011
代码如下:
let context = getContext(this);
let phAccessHelper = photoAccessHelper.getPhotoAccessHelper(context);
let albumPredicates: dataSharePredicates.DataSharePredicates = new dataSharePredicates.DataSharePredicates();
let albumName: photoAccessHelper.AlbumKeys = photoAccessHelper.AlbumKeys.ALBUM_NAME;
albumPredicates.equalTo(albumName, ‘albumName’);
let albumFetchOptions: photoAccessHelper.FetchOptions = {
fetchColumns: [],
predicates: albumPredicates
};
let photoPredicates: dataSharePredicates.DataSharePredicates = new dataSharePredicates.DataSharePredicates();
let photoFetchOptions: photoAccessHelper.FetchOptions = {
fetchColumns: [],
predicates: photoPredicates
};
try {
let albumFetchResult: photoAccessHelper.FetchResult<photoAccessHelper.Album> = await phAccessHelper.getAlbums(photoAccessHelper.AlbumType.USER, photoAccessHelper.AlbumSubtype.USER_GENERIC, albumFetchOptions);
let album: photoAccessHelper.Album = await albumFetchResult.getFirstObject();
console.info('getAlbums successfully, albumName: ’ + album.albumName);
let photoFetchResult = await album.getAssets(photoFetchOptions);
let photoAsset = await photoFetchResult.getFirstObject();
console.info('album getAssets successfully, albumName: ’ + photoAsset.displayName);
albumFetchResult.close();
photoFetchResult.close();
} catch (err) {
console.error('album getAssets failed with err: ’ + JSON.stringify(err));
}
同时无法获取相机中的图片
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
是否可以获取用户手机上所有的app列表
261浏览 • 1回复 待解决
用户相册, 获取不到albumName
646浏览 • 1回复 待解决
遍历目录中所有文件,遍历指定目录,获取当前目录下所有文件,并通过页面展示文件列表。
444浏览 • 1回复 待解决
元服务没法通过帐号api获取用户头像?
802浏览 • 1回复 待解决
通过相册名获取相册资源
407浏览 • 1回复 待解决
应用弹框获取相册权限,用户禁止了,后续再调用requestPermissionFromUser不会再拉起用户授权弹窗
690浏览 • 1回复 待解决
fileio这个api可以获取一个目录下的所有文件名吗?
1202浏览 • 1回复 待解决
获取相册图片信息,获取手机相册中的图片相关信息
452浏览 • 1回复 待解决
单框架如何获取系统所有通知消息
636浏览 • 1回复 待解决
怎么获取当前用户的用户ID
336浏览 • 1回复 待解决
希望鸿蒙能开放所有手机用户自助刷机
5565浏览 • 1回复 待解决
如何获取工程目录下的json文件?
320浏览 • 1回复 待解决
如何获取当前应用程序缓存目录
796浏览 • 1回复 待解决
获取网络图片并保存到相册
448浏览 • 1回复 待解决
Native侧如何获取可操作的文件目录
867浏览 • 1回复 待解决
有谁知道沙箱目录怎么获取
1105浏览 • 1回复 待解决
如何获取当前ROM是用户版本还是工程版本
446浏览 • 1回复 待解决
怎样获取当前app的缓存目录?
297浏览 • 2回复 待解决
ArkTS层获取对象的所有方法
599浏览 • 1回复 待解决
HAP中如何引用HAR包中resources目录的element目录、media目录和rawfile目录资源
920浏览 • 1回复 待解决
如何获取HarmonyOS 项目的SHA1?
4008浏览 • 1回复 待解决
如何读取相册中的图片
251浏览 • 1回复 待解决
我要如何获取Powered By HarmonyOS 技术认证标识?
6494浏览 • 1回复 已解决
如何保存本地图片到相册中
253浏览 • 1回复 待解决
添加动态权限后可以解决上面的报错,但是仍然无法获取相机中的图片。主要是因为相机相册是系统接口,无法通过getAlbums获取,只能通过picker获取。如果不想使用picker,想自定义一个页面就只能访问自己的相册,不能访问系统相册。