问题视频:
第五章-保存应用数据 _调用系统相册添加图片_哔哩哔哩_bilibili
跟着视频学习了Openharmony的入门,好不容易到了最后一个章节了,结果遇到了功能无法使用,还是得想办法
问题描述:
按照视频上的代码,粘贴了applications_photos: Photos system app | 系统相册应用
对于图像读取的相关代码,但是却死活起不来相册
查看Log:
过滤了error,发现就是代码中的abilty name和package Name没法对上,可能华为后续进行了更新但是视频也很难修改。
这边的原理和android差不多,实际上都是发送一个Intent拉起其他的应用,所以这里所对应的packageName(华为叫做BundleName)和ActivityName(华为叫做AbilityName)是需要对应上的,不然不知道这个intent信息发给谁。
解决方案:
Openharmony hdc启动关闭应用_hdc 启动应用-CSDN博客
之前写过这样一篇文章说过怎么获取ability Name的,按照这个方法来试试。
这边就直接给结果了
bundleName:
com.huawei.hmos.photos
abilityName:文章来源:https://www.toymoban.com/news/detail-791130.html
com.huawei.hmos.photos.MainAbility
这里只需要把startParam设置下就成功了。文章来源地址https://www.toymoban.com/news/detail-791130.html
selectPic(){
let startParmameter = {
bundleName:"com.huawei.hmos.photos",
abilityName: "com.huawei.hmos.photos.MainAbility",
parameters: {
uri: "multipleselect"
}
};
globalThis.context.startAbilityForResult(startParmameter).then((v) => {
let want = v['want'];
console.info(`test select multiple ${want}`);
if (want != null && want != undefined) {
let param = want['parameters'];
console.info(`test select multiple ${param}`);
if (param != null && param != undefined) {
let uri = param['select-item-list'];
this.imageArray = uri;
console.info(`test select multiple ${uri[0]} ${uri[1]}`);
}
}
}, (error) => {
console.debug(`startAbility failed, error: ${JSON.stringify(error)}`);
})
}
到了这里,关于Openharmony入门教程 相册问题修复的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!