Tag: 更新

防止通过iTunes升级iOS应用程序时删除用户数据

我想上传我的iOStesting版组testing版的iOS版本。 用户将其数据保存在“文档”文件夹中。 为了让用户升级他们的应用程序而不丢失他们的数据,我需要做些什么?

更新没有XML的sqlite数据库

我的应用程序需要来自sqlite数据库的数据。 它将附带这个数据库的一个版本,但我需要定期更新(最可能每月一次)。 通常情况下,我一直在通过我设置的一堆web服务将XML应用的其他部分的更新发送给XML,但是现在我正在使用的这个特定的数据库非常大(大约20-30 MB)当我尝试以这种方式发送超时错误。 我试图将数据库放在公司服务器上,然后将其下载到一个NSData对象中。 然后,我将该数据对象保存到我的应用程序的Documents目录中。 当我重新启动我的应用程序,我得到一个错误,说:“path文件似乎不是一个SQLite数据库”。 代码如下。 // Download data NSURL *url = [NSURL URLWithString:@"http://www.mysite.net/download/myDatabase.sqlite"]; NSData *fileData = [[NSData alloc] initWithContentsOfURL:url]; NSLog(@"%@",fileData); // Writes a bunch of 8 character (hex?) strings // Delete old database NSError *error; NSURL *destination = [app applicationDocumentsDirectory]; destination = [destination URLByAppendingPathComponent:@"myDatabase"]; destination = [destination URLByAppendingPathExtension:@"sqlite"]; NSLog(@"destination = %@",destination); [[NSFileManager […]

应用程序更新,NSURL和文档目录

我在app store中有一个应用程序,它使用Core Data来保存大部分数据。 例外是存储图像。 我将子目录中的图像存储到Documents目录,并将核心数据存储中相应对象属性中的NSURL引用存储到该图像中。 我们已经注意到,当一个更新到应用程序商店,这些图像没有find,因此不显示,使用与以前版本的应用程序存储的引用。 现在,我怀疑问题在于,因为我们使用开发设备进行testing,所以这个问题会传播,因为开发应用程序使用的应用程序目录中的目录与App Store创build/使用的不同。 我注意到应用程序中应用程序的应用程序商店目录与在Xcode中debugging版本时创build的应用程序目录之间的区别。 因此,存储在核心数据中的URL指向错误的应用程序文件夹。 这是一个很难debugging,因为我不能下载一个较旧的应用程序版本,一旦新版本已经在商店发布。 所以我有几个问题。 我可以保证下载相同应用程序版本的人员的Applications子目录相同,这对非开发设备来说是非问题吗? 我应该存储相对图像的URL或string来表示这些资源的位置,或者我应该罚款存储最终是绝对url? 非常感谢,菲利普