介绍
@ohos.file.photoAccessHelper (相册管理模块)
该模块提供相册管理模块能力,包括创建相册以及访问、修改相册中的媒体数据信息等。
使用相册模块获得所有照片url地址
export async function allExample() {
let res:string[]=[]
console.info('getAllObjectDemo');
let predicates: dataSharePredicates.DataSharePredicates = new dataSharePredicates.DataSharePredicates();
let fetchOption: photoAccessHelper.FetchOptions = {
fetchColumns: [],
predicates: predicates
};
let fetchResult: photoAccessHelper.FetchResult<photoAccessHelper.PhotoAsset> = await phAccessHelper.getAssets(fetchOption);
const list=await fetchResult.getAllObjects()
res=list.map(item=>item.uri)
return res
}
测试页面Index.ets代码
import { Permissions } from '@kit.AbilityKit'
import { permissionManager } from '../common/PermissionManager'
import { promptAction } from '@kit.ArkUI'
import { allExample, createExample, deleteExample, example, pickerExample } from '../common/photoAccessHelper'
@Entry
@Component
struct PhotoTest {
@State
list:string[]=[]
async onPageShow(): Promise<void> {
this.list = [...await allExample()]
this.list=[...this.list]
console.log(`list:${JSON.stringify(this.list)}`)
console.log(`len:${this.list.length}`)
}
build() {
Scroll(){
Column({space:10}){
if(this.list.length!=0)
Flex({wrap:FlexWrap.Wrap}){
ForEach(this.list,(item:string)=>{
Image(item).width('30%')
.margin(15)
})
}
}.justifyContent(FlexAlign.Center)
.alignItems(HorizontalAlign.Center)
.height('100%')
.width('100%')
}
}
}