JeekStuido
JeekStuido
  • 发布:2025-06-20 11:31
  • 更新:2025-06-20 11:31
  • 阅读:31

【报Bug】ios环境下,FileSystemManager.readZipEntry解析刚下载好的tempFilePath报Bad Address

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: mac

HBuilderX类型: 正式

HBuilderX版本号: 4.66

手机系统: iOS

手机系统版本号: iOS 18

手机厂商: 模拟器

手机机型: iphone16 max

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

示例代码:
const fileManager = uni.getFileSystemManager()  
const downloadTask = uni.downloadFile({  
                    url: props.src,  
                    success: e => {  
                        console.log("download success", e.tempFilePath)  
                        // 这里成功了  
                        // download success,  /Users/torry/Library/Developer/CoreSimulator/Devices/8FD7F7D9-6029-47CA-B10B-0FB56E1DAA26/data/Containers/Data/Application/E75BBFEA-A91E-4AB9-BA8A-AE8680F2249D/Library/Caches/uni-download/test.zip  
                        fileManager.readZipEntry({  
                            filePath: e.tempFilePath,  
                            success: e => {  
                                                             // 处理zip文件内容  
                            },  
                            fail: e => {  
                                console.error(e)  
                                // 这里报错了  
                                // {  
                                //     "code": 0,  
                                //     "errSubject": "uni-fileSystemManager",  
                                //     "userInfo": {},  
                                //     "message": "",  
                                //     "errCode": 1300011,  
                                //     "errMsg": "Bad address",  
                                //     "name": "Error",  
                                //     "domain": ""  
                                // }  
                            }  
                        })  
                    },  
                    fail: (e : DownloadFileFail) => {  
                        console.error("下载文件失败", e)  
                    }  
                })

操作步骤:

执行代码即可看到

预期结果:

执行success内逻辑

实际结果:
{  
    "code": 0,  
    "errSubject": "uni-fileSystemManager",  
    "userInfo": {},  
    "message": "",  
    "errCode": 1300011,  
    "errMsg": "Bad address",  
    "name": "Error",  
    "domain": ""  
}

bug描述:

uni.downloadFile方法下载好zip文件后,想通过fileManager.readZipEntry处理zip文件。
现在uni.downloadFile已经成功下载文件:

download success, /Users/torry/Library/Developer/CoreSimulator/Devices/8FD7F7D9-6029-47CA-B10B-0FB56E1DAA26/data/Containers/Data/Application/E75BBFEA-A91E-4AB9-BA8A-AE8680F2249D/Library/Caches/uni-download/test.zip

fileManager.readZipEntry执行到fail上了

{  
    "code": 0,  
    "errSubject": "uni-fileSystemManager",  
    "userInfo": {},  
    "message": "",  
    "errCode": 1300011,  
    "errMsg": "Bad address",  
    "name": "Error",  
    "domain": ""  
}
2025-06-20 11:31 负责人:无 分享
已邀请:

要回复问题请先登录注册