简体   繁体   English

在 android 10 sdk29 上下载 ionic 3 文件时出错

[英]Getting error in file download ionic 3 on android 10 sdk29

I am getting following error on android 10 not on lower versions if I am using: downloadDir = cordova.file.externalRootDirectory + 'download/';如果我使用的是 android 10 而非较低版本,我会收到以下错误:downloadDir = cordova.file.externalRootDirectory + 'download/';

const fileTransfer: FileTransferObject = this.transfer.create();
fileTransfer.download(sourceUrl, downloadDir + fileName, false).then((entry) => {
 })

E/FileTransfer( 5726): {"code":1,"source":"https://example.azurewebsites.net/api/interactivelabel/export?ItemCode=1","target":"file:///storage/emulated/0/download/export-1.csv","http_status":200,"exception":"/storage/emulated/0/download/export-1.csv: open failed: EACCES (Permission denied)"} 09-04 06:05:15.497 E/FileTransfer( 5726): java.io.FileNotFoundException: /storage/emulated/0/download/export-1.csv: open failed: EACCES (Permission denied) 09-04 06:05:15.497 E/FileTransfer( 5726): at libcore.io.IoBridge.open(IoBridge.java:496) 09-04 06:05:15.497 E/FileTransfer( 5726): at java.io.FileOutputStream.(FileOutputStream.java:235) 09-04 06:05:15.497 E/FileTransfer( 5726): at org.apache.cordova.CordovaResourceApi.openOutputStream(CordovaResourceApi.java:329) 09-04 06:05:15.497 E/FileTransfer( 5726): at org.apache.cordova.CordovaResourceApi.openOutputStream(CordovaResourceApi.java:310) 09-04 06:05:15.497 E/FileTransfer( 5726): at org.apache.cordova.filetransfer.FileTransfer$2.run(FileTransf E/FileTransfer(5726):{"code":1,"source":"https://example.azurewebsites.net/api/interactivelabel/export?ItemCode=1","target":"file:/// storage/emulated/0/download/export-1.csv","http_status":200,"exception":"/storage/emulated/0/download/export-1.csv: open failed: EACCES (Permission denied)" } 09-04 06:05:15.497 E/FileTransfer(5726):java.io.FileNotFoundException:/storage/emulated/0/download/export-1.csv:打开失败:EACCES(权限被拒绝)09-04 06: 05:15.497 E/FileTransfer(5726):在 libcore.io.IoBridge.open(IoBridge.java:496) 09-04 06:05:15.497 E/FileTransfer(5726):在 java.io.FileOutputStream.(FileOutputStream. java:235) 09-04 06:05:15.497 E/FileTransfer(5726): 在 org.apache.cordova.CordovaResourceApi.openOutputStream(CordovaResourceApi.java:329) 09-04 06:05:15.497 E/FileTransfer(5726) : 在 org.apache.cordova.CordovaResourceApi.openOutputStream(CordovaResourceApi.java:310) 09-04 06:05:15.497 E/FileTransfer(5726): 在 org.apache.cordova.filetransfer.FileTransfer$2.run(FileTransf er.java:811) 09-04 06:05:15.497 E/FileTransfer( 5726): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) 09-04 06:05:15.497 E/FileTransfer( 5726): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) 09-04 06:05:15.497 E/FileTransfer( 5726): at java.lang.Thread.run(Thread.java:919) 09-04 06:05:15.497 E/FileTransfer( 5726): Caused by: android.system.ErrnoException: open failed: EACCES (Permission denied) 09-04 06:05:15.497 E/FileTransfer( 5726): at libcore.io.Linux.open(Native Method) 09-04 06:05:15.497 E/FileTransfer( 5726): at libcore.io.ForwardingOs.open(ForwardingOs.java:167) 09-04 06:05:15.497 E/FileTransfer( 5726): at libcore.io.BlockGuardOs.open(BlockGuardOs.java:252) 09-04 06:05:15.497 E/FileTransfer( 5726): at libcore.io.ForwardingOs.open(ForwardingOs.java:167) 09-04 06:05:15.497 E/FileTransfer( 5726): at android.app.ActivityThread$AndroidOs.open(ActivityThread.java:7893) 09-04 06:05:15.497 E/FileTransfer( 5726): at er.java:811) 09-04 06:05:15.497 E/FileTransfer(5726):在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) 09-04 06:05:15.497 E/FileTransfer 5726): 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) 09-04 06:05:15.497 E/FileTransfer(5726): 在 java.lang.Thread.run(Thread.java: 919) 09-04 06:05:15.497 E/FileTransfer(5726):引起:android.system.ErrnoException:打开失败:EACCES(权限被拒绝)09-04 06:05:15.497 E/FileTransfer(5726):at libcore.io.Linux.open(Native Method) 09-04 06:05:15.497 E/FileTransfer(5726):在 libcore.io.ForwardingOs.open(ForwardingOs.java:167) 09-04 06:05:15.497 E /FileTransfer(5726): 在 libcore.io.BlockGuardOs.open(BlockGuardOs.java:252) 09-04 06:05:15.497 E/FileTransfer(5726): 在 libcore.io.ForwardingOs.open(ForwardingOs.java:167 ) 09-04 06:05:15.497 E/FileTransfer(5726): at android.app.ActivityThread$AndroidOs.open(ActivityThread.java:7893) 09-04 06:05:15.497 E/FileTransfer(5726): at libcore.io.IoBridge.open(IoBridge.java:482) 09-04 06:05:15.497 E/FileTransfer( 5726): ... 7 more libcore.io.IoBridge.open(IoBridge.java:482) 09-04 06:05:15.497 E/FileTransfer(5726): ... 7 更多

android:requestLegacyExternalStorage="true"

将其添加到清单文件中的应用程序标记。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Android 升级和部署问题:现有应用程序定位 &lt; SDK29 - Android upgrade & deploy question: existing app targeting < SDK29 从 sdk 28 更新到 sdk29 后,Android Spinner 对话框弹出窗口不起作用 - Android Spinner dialog popup not working after update from sdk 28 to sdk29 错误升级 sdk 29 为 android 10-Q 从 android 9-Pie 后构建应用程序没有响应 - Error upgrade sdk 29 for android 10-Q from android 9-Pie after building app not responding Android 10 (api 29) 中没有这样的文件或目录 - No such file or directory in Android 10 (api 29) Android 10(api-29)文件写入 - Android 10 (api-29) file writing 是否可以以编程方式访问 Android Q(SDK &gt;= 29)上的下载文件夹? - Is it possible to programmatically access Download folder on Android Q (SDK >= 29)? Android 10 / API 29 Kotlin - 下载视频到图片中的子目录 - Android 10 / API 29 Kotlin - download video to sub directory in pictures Robolectric 和 Android SDK 29 - Robolectric and Android SDK 29 Android 10 API 29(操作系统错误:权限被拒绝,errno = 13)保存文件(颤振) - Android 10 API 29 (OS Error: Permission denied, errno = 13) to save file (Flutter) Android ACTIVITY_RECOGNITION 权限 SDK 28 在 Android 10/Q(SDK 29)上运行 - Android ACTIVITY_RECOGNITION Permission SDK 28 running on Android 10/Q (SDK 29)
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM