Phonegap 在 iOS 中使用 File-Transfer 下载文件并在设备中访问它

Posted

技术标签:

【中文标题】Phonegap 在 iOS 中使用 File-Transfer 下载文件并在设备中访问它【英文标题】:Phonegap Download file in iOS with File-Transfer and access to it in the device 【发布时间】:2015-07-21 14:48:48 【问题描述】:

我使用 Phonegap 和 jQuery Mobile 创建了一个应用程序,它在 iPad mini 上运行良好,我正在使用 File-Transfer 在设备中下载文件,日志显示文件已成功下载,但我不能在设备中的任何位置找到 pdf 文档,这是我的代码:

function iosDownload()  
    var fileTransfer = new FileTransfer(); 
    var uri = encodeURI("WEB_SERVICE_URL"); 

    window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function (fs)  
        var fileNamePath = fs.root.fullPath + "/file.pdf"; 
        fileTransfer.download( uri, fileNamePath, function(entry)  
            console.log("download complete: " + entry.fullPath); 
            alert("Reporte generado exitosamente"); 
            , function(error)  
                console.log("download error source " + error.source); 
                console.log("download error target " + error.target); 
                console.log("upload error code" + error.code); 
                alert("Error al generar reporte. Intentar mas tarde"); 
            , false,  
                headers:  
                    "Authorization": "Basic dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA==" 
                 
             
        ); 
    ); 
 

日志中的响应显示了这个路径:

下载完成:/var/mobile/Containers/Data/Application/DEVICE_UNIQUEID/Documents/file.pdf

我找不到该文档,有什么方法可以在“下载”文件夹中下载它?或者有什么办法可以在那个位置找到它?谢谢。

【问题讨论】:

【参考方案1】:

查看这个文件路径

Users/YourAccount/Library/Developer/CoreSimulator/Devices/45BCFA0B-C37A-4A85-A63C-(device's ID)/data/Containers/Data/Application/E4472D7E-A833-4985-89CF-(App's ID)/Documents/yourfile.pdf

希望有所帮助。 与您保存的路径相同。

window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function (fs)  
    var fileNamePath = fs.root.fullPath + "/file.pdf"; 
    $scope.fileToShow = fileNamePath;


html

<div>fileToShow</div>

如果您想在 iPad 上查看 pdf,请安装 iExplorer

iExplorer

连接您的 iPad 并打开 iExplorer。然后转到文件和应用程序,然后选择您的应用程序。您的 pdf 将位于 Documents 下。

【讨论】:

谢谢,但那是模拟器,我可以在其中找到文件,但我现在在 mi iPad 上运行应用程序,我找不到它们。

以上是关于Phonegap 在 iOS 中使用 File-Transfer 下载文件并在设备中访问它的主要内容,如果未能解决你的问题,请参考以下文章

在 PhoneGap 中使用协议缓冲区 - iOS

在 iOS 上单击时,Phonegap 插件推送通知保留在托盘中

无法使用xcode phonegap在ios中隐藏状态栏

在 PhoneGap 1.2.0 中使用 Google Analytics 时 Android 和 iOS 之间的差异

使用 phonegap 在 IOS 的图库中查看使用 FileWriter 写入文件系统的图像文件

使用 AngularJS 在 iOS 的 PhoneGap 3.3 中登录 XCODE