HarmonyOS request downloadfile在一台模拟器设备上测试失败

request downloadfile一台模拟器设备上测试失败,换一台真机是好的。换另外一台开发机上的IDE及模拟器也是好的。报错信息如下:

SendRequest 148: failed, handle:0 error:3 desc:*.ISystemAbilityManager 
[request_manager.cpp LoadServerSuccess 408] load download server success 
[request_manager.cpp OnRemoteDied 347] RequestSaDeathRecipient on remote systemAbility died.
  • 1.
  • 2.
  • 3.

代码如下:

getNetPic(context: Context, url: string,fileName: string, 
success: (filePath : string) => void) { 
  hilog.error(0x0000, 'ch_test', 'context >>> ' + context.toString()); 
  let filesDir = context.filesDir; 
  let temFileName = Date.now() + fileName 
  let temFile = filesDir + '/' + temFileName 
  hilog.error(0x0000, 'ch_test', 'temFile >>> ' + temFile); 
  try { 
    // 需要手动将 url 替换为真实服务器的 HTTP 协议地址 
    request.downloadFile(context, { 
      url: url, 
      filePath: temFile 
    }, (err: BusinessError, data: request.DownloadTask) => { 
      if (err) { 
        console.error(`Failed to request the download. Code: ${err.code}, message: ${err.message}`); 
        return; 
      } 
      let downloadTask: request.DownloadTask = data; 
      hilog.error(0x0000, 'ch_test', 'download complete >>> ' + downloadTask.toString()); 
      downloadTask.on('complete', () => { 
        success(temFile) 
      }) 
    }); 
  } catch (err) { 
    console.error(`Failed to request the download. err: ${JSON.stringify(err)}`); 
  } 
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.

看样子是downloadTask on complete没有监听到。

已参考API:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-request-V5#requestdownloadfile9

HarmonyOS
2024-09-06 10:53:08
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
FengTianYa

如果downloadTask.on('complete')没有监听到,麻烦确认下失败的模拟设备上是否打开了网络权限。

“requestPermissions”: [ 
{ 
  “name”: “ohos.permission.INTERNET”, 
} 
]
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

也可以使用downloadTask.on('fail')监听下载失败的错误码,方便查找原因。

分享
微博
QQ
微信
回复
2024-09-06 15:42:07


相关问题
HarmonyOS X86模拟器AAID获取失败
631浏览 • 1回复 待解决
模拟器安装应用包报错
833浏览 • 1回复 待解决
一台服务如何安装双centos系统?
2775浏览 • 1回复 待解决
模拟器Hilog打印日志,控制不显示
13966浏览 • 4回复 待解决
真机和模拟器安装失败
11998浏览 • 2回复 待解决
ds的本地模拟器启动失败
7148浏览 • 1回复 待解决
使用DevEco Studio登录模拟器失败
11873浏览 • 1回复 待解决
HarmonyOS flutter运行在模拟器白屏
935浏览 • 1回复 待解决
HarmonyOS px2vp模拟器无法正确转换
1122浏览 • 1回复 待解决
HarmonyOS 模拟器设备IP如何配置
1073浏览 • 1回复 待解决
启动本地模拟器,提示Haxm安装失败
1282浏览 • 1回复 待解决
DevEco Studio启动本地模拟器失败报错
14387浏览 • 2回复 待解决
HarmonyOS一台真机调不支 IAP 支付
1093浏览 • 1回复 待解决
HDC是否可以针对模拟器使用?
1377浏览 • 1回复 待解决
HarmonyOS模拟器使用libjsvm.so崩溃
939浏览 • 1回复 待解决
DevEco Studio启动本地模拟器失败报错
6390浏览 • 2回复 待解决