HarmonyOS 鸿蒙Next 视频照片的下载到沙箱并读取

HarmonyOS 鸿蒙Next 视频照片的下载到沙箱并读取

我们的应用的页面1中有一张照片,一个视频。 现在点击下载按钮,需要把这张图片和视频下载到应用内,并且在 页面2 中读取所下载的照片和视频,这个该怎么实现啊?

2 回复

可以参考此demo:

import common from ‘[@ohos](/user/ohos).app.ability.common’;
import request from ‘[@ohos](/user/ohos).request’;
import { BusinessError } from ‘[@ohos](/user/ohos).base’;

// 获取应用文件路径
let context = getContext(this) as common.UIAbilityContext;
let filesDir = context.filesDir;

[@Entry](/user/Entry)
[@Component](/user/Component)
export struct Index1 {
  [@State](/user/State) message: string = ‘Hello World’;

  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
        Button(“下载”)
        .onClick(() => {
          try {
            console.log(‘downloadTask1 filesDir’ + filesDir + ‘/00sg00izg2.jpg’);
            //下载文件
            request.downloadFile(context, {
              url: ‘https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2023%2F1108%2Fea454272j00s3rxox001tc000sg00izg.jpg&thumbnail=660x2147483647&quality=80&type=jpg’,
              filePath: filesDir + ‘/00sg00izg2.jpg’
            }).then((downloadTask: request.DownloadTask) => {
              //开启回调
              downloadTask.on(‘complete’, () => {
                console.info(‘downloadTask1 complete’);
              })
            }).catch((err: BusinessError) => {
              console.error(Invoke downloadTask failed, code is ${err.code}, message is ${err.message});
            });
          } catch (error) {
            let err: BusinessError = error as BusinessError;
            console.error(Invoke downloadTask downloadFile failed, code is ${err.code}, message is ${err.message});
          }
        })

          .width(‘100%’)
      }
      .height(‘100%’)
    }
  }}
  

更多关于HarmonyOS 鸿蒙Next 视频照片的下载到沙箱并读取的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next系统中,视频和照片的下载到沙箱并读取的过程可以通过以下步骤实现:

  1. 下载文件到沙箱

    • 使用系统提供的文件下载API,指定下载路径为沙箱内的某个目录。沙箱是鸿蒙系统为应用提供的一个隔离存储区域,确保应用数据的安全性和隐私性。
    • 下载完成后,系统会返回文件在沙箱内的存储路径。
  2. 读取沙箱内的文件

    • 使用文件读取API,根据下载时返回的路径,访问沙箱内的视频或照片文件。
    • 鸿蒙系统提供了丰富的文件操作接口,包括打开文件、读取文件内容、关闭文件等。
    • 读取到的文件内容可以按需进行处理,如解码视频、显示图片等。
  3. 注意事项

    • 在进行文件操作时,需确保应用具有相应的权限,如读写存储权限。
    • 沙箱内的文件路径对外部应用是不可见的,保证了数据的安全性。
    • 鸿蒙系统对文件操作有严格的权限控制,确保用户数据的安全和隐私。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部