在iPhone中下载文件的位置?

时间:2011-08-29 11:23:31

标签: iphone objective-c ios download

如果我将从我的自定义应用程序下载iPhone中的文件,它将保存文件以及如何获取下载文件列表,如果我将重新启动我的应用程序?是否有任何命名的应用程序存储或全局存储,如Windows Phone 7?

3 个答案:

答案 0 :(得分:2)

作为开发人员,您有责任将文件保存在您喜欢的文件夹中。

但是,您只能在应用程序可写路径中保存文件并创建文件夹:

+ (NSString*) applicationWriteablePath                                                                                     
{                                                                                                                       
    NSArray *aPaths         = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);          
    NSString *aWritablePath = [aPaths objectAtIndex:0];                                                                 

    return aWritablePath;                                                                                               
}

然后,您可以使用NSFileManager保存文件。请参阅Apple Documentation创建文件夹并相应地保存文件。

答案 1 :(得分:2)

您可以将用户文件保存在应用的“文档”文件夹中。您可以使用以下命令构建Documents文件夹的绝对路径:

`NSString *docDir = [NSHomeDirectory() stringByAppendingPathComponent: @"Documents"];`

然后,您需要在应用的Info.plist中启用iTunes文件共享。

要在Mac OS X或Windows之间来回传输文件,请使用USB电缆连接设备,启动iTunes,在左侧列表中单击设备图标,然后单击窗格中的“应用程序”选项卡。右侧,一直滚动到底部,然后单击您的应用程序图标。应用程序图标右侧的框将列出“文档”文件夹中的所有文件。有来回传输文件的按钮。

这就是我的应用程序Warp Life处理用户文档的方式,但我发现它是一个庞大的PITA,必须使用iTunes才能实现这一点,并且只有在我的设备被束缚时它才有效 - 它不会通过无线或蓝牙工作。在iTunes中进行文件传输的用户界面非常笨拙且难以找到对于那些并不是非常有感染力的用户。

出于这个原因,我正在考虑实施一些其他方式来传输文件。一种方法是在我的应用程序中运行一个小型HTTP服务器,该服务器只有一个列出文件的页面,可以通过单击其链接下载,并使用一个简单的表单将文件上载到用户的设备。

这不仅可以无线工作,而且适用于任何操作系统。我很确定我的许多目标用户都在运行Linux,并且如果不需要使用iTunes来配置一个设备,就不会在Windows或Mac OS X上运行。

答案 2 :(得分:1)

我从未研究过它,但在Apple提供的电子书中,据说每个应用程序都有自己的文件系统份额。

所以如果你决定下载到你的文件夹,无论你下载什么

如果您想了解更多信息,请点击此处:Important Application Directories