HarmonyOS 鸿蒙Next openharmony怎么把屏幕截图自动保存进图库里面
HarmonyOS 鸿蒙Next openharmony怎么把屏幕截图自动保存进图库里面 我通过screenshot.save()获取屏幕截图的pixlmap对象然后把它编码成jpg图片格式,现在要怎么样才能把他保存进相册或者是图库里面呢,有大佬知道的吗,指点一下,球球了。
将 PixelMap 保存至相册,记得申请权限
export async function encode(pixelMap: PixelMap) { // Packing image.
const imagePackerApi = image.createImagePacker();
const packOptions: image.PackingOption = {
format: 'image/jpeg',
quality: 100
}
const imageData = await imagePackerApi.packing(pixelMap, packOptions);
console.info(`imageData's length is ${imageData.byteLength}`)
// Get album's path.
const context = getContext(this);
const media = mediaLibrary.getMediaLibrary(context);
const publicPath = await media.getPublicDirectory(mediaLibrary.DirectoryType.DIR_IMAGE);
const currentTime = new Date().getTime();
// Create image asset.
const imageAssetInfo = await media.createAsset(
mediaLibrary.MediaType.IMAGE,
`image_${currentTime}.jpg`,
publicPath
);
const imageFd = await imageAssetInfo.open('rw');
await fs.write(imageFd, imageData);
// Image resource release.
await imageAssetInfo.close(imageFd);
imagePackerApi.release();
await media.release();
}
更多关于HarmonyOS 鸿蒙Next openharmony怎么把屏幕截图自动保存进图库里面的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
我现在用选择器存进去了,有时间试一下你的方法,谢谢老哥的指点,
您好 有这部分的代码吗?方便截图一下吗?
我想做的是将一个图片保存到相册 但是官方的PhotoViewPicker.save()
方法没得任何反应,不知道怎么做。
有要学HarmonyOS AI的同学吗,联系我:https://www.itying.com/goods-1206.html
没有反应就是正常的呀,保存之后还要把图片编码什么的,
我现在的方法是通过screenshot.save()
获取屏幕截图的pixlmap对象然后把它编码成jpg图片格式,再通过PhotoViewPicker
选择器保存在相册里面,还是不能自动保存到相册里面,官方示例有一个示例可以,但是我看不懂,
我一开始是保存在沙箱目录下,不过每次都要先下载到windows文件里面,再通过命令推进开发板里,然后我就不用这个方法了。
总的来说,HarmonyOS是一款非常优秀的操作系统,期待它能在未来带给我们更多惊喜!
我屏幕下拉的截图按钮截到的图片可以在这里找得到
这个是截到的图
这个是用命令查到的结果
嗯嗯,我知道在这个路径下,
可能是在他烧录后的源码镜像目录某个地方