将 iOS 7 升级到 iOS 8 后应用程序数据丢失

     2023-03-07     34

关键词:

【中文标题】将 iOS 7 升级到 iOS 8 后应用程序数据丢失【英文标题】:Application data lost after upgrade iOS 7 to iOS 8 【发布时间】:2014-11-03 11:49:43 【问题描述】:

假设-我的应用程序 ABC

应用程序用户在将 iOS 7 升级到 iOS 8 时遇到应用程序问题。

请检查以下场景:

    iPhone 5s - iOS 7 - 用户安装了我的应用程序(此应用程序支持 iOS 7 而不是 iOS 8)。 用户下载的文档目录中的视频文件最大为 2 GB。 应用程序在 iOS 7 上运行良好。 Apple 发布 iOS 8 时 - 用户将设备 iOS 7 升级到 iOS 8 并安装上述应用程序。 所有下载的视频都丢失了,这些视频保存在文档字典中,但仍然显示设备设置中消耗的空间。 如果用户再次下载相同的视频,则它可以正常工作,但它会在设备设置中显示双倍消耗的内存。

您能否就上述问题给我建议,然后我可以向我的应用程序用户建议?

【问题讨论】:

你是什么意思“所有下载的视频都丢失了”?请澄清一下,因为实际的文件夹在更新过程中始终保持不变,但Documents文件夹的实际路径在iOS8中发生了变化,所以你获取Documents文件夹内容的过程可能只是错误的。 iOS8在这里出错的可能性很小,我猜你的代码有一点小故障,所以,请分享你如何访问应用程序中的Documents文件夹的过程——你可以编辑并随时扩展您的问题。 您还可以查看此答案以将其与您的应用程序进行比较:***.com/questions/26610439/… 1) 应用程序安装在 iOS7 设备中。 2) 购买所有包并下载 Documents 文件夹中的视频文件 3) 视频文件名存储在数据库中,并使用 iOS API 动态获取路径。 4)应用程序在所有视频上都可以正常工作,现在是时候将设备升级到 iOS8 5)应用程序仍在设备中,现在将 iOS7 升级到 iOS8 6)完成升级过程后,现在启动相同的应用程序。 7) 未找到视频文件,从 Documents 文件夹中清空文件数据。您能否就上述情况提出解决方案?如果需要任何信息,请告诉我。 // 获取媒体目录 - (NSString *)mediaDirectory NSString *filePath = [(NSString *)[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject] stringByAppendingPathComponent:@"media"]; NSError *error = nil; if (![[NSFileManager defaultManager] fileExistsAtPath:filePath]) BOOL resultFlag = [[NSFileManager defaultManager] createDirectoryAtPath:filePath withIntermediateDirectories:NO attributes:nil error:&error]; NSLog(@"媒体文件夹创建:%d",resultFlag); 返回文件路径; 【参考方案1】:

我们遇到了类似的问题 - 直到我们向 Apple 提交更新后才出现(由于此更改,我们的应用在 iOS 8.1 上启动时崩溃!!!即使我们的应用的部署目标是 7.0,我们也'再受影响,谈谈向后兼容性...)。

Apple 正式概述了本技术说明中的变化:https://developer.apple.com/library/ios/technotes/tn2406/_index.html

iOS 8 更改了用于 存储用户和应用程序数据(例如文档、库)。虽然 这些目录的位置一直是一个实现 细节,一些应用程序不正确地假设文件和 库目录与应用程序的目录位于同一目录中 捆。 iOS 8 从应用程序中拆分应用程序的数据 捆。尝试获取文档路径的代码或 库目录将在 iOS 8 上返回无效路径。尝试 访问此路径将失败,并可能终止您的应用程序。

如果我理解正确,即使您使用正确的方法来定位 iOS 7 和 iOS 8 上的 Documents 目录,您也会得到两个不同的路径。这意味着从 iOS 7 升级到 iOS 8 的用户仍然将他们的数据保存在旧的 Documents 路径下,该路径位于您的应用程序包中。我不知道 Apple 认为我们应该如何升级我们的应用程序,或者是否有一些自动复制正在进行。

我将不得不使用 iFunBox(iOS 文件浏览器)之类的工具来看看会发生什么。

【讨论】:

将tomcat 7升级到8后检票口登录不起作用

...:2019-12-3015:28:33【问题描述】:我正在使用tomcat7在我的应用程序中开发wicket版本1.4.17。更新tomcat后,我​​的应用程序坏了。单击提交时登录页面不工作。当我在url中按enter时它正在工作。如果我点击登录按钮,它会返回相同的... 查看详情

BLE 在将数据从 iOS 7.1 发送到 iOS 8 时花费了太多时间

...:09【问题描述】:我有一个奇怪的问题。我正在开发一个应用程序,我在其中发送20-20字节的块。。一切正常。当我发送字节数据从iOS8到iOS8设备时,从一台设备传输到另一台设备大约需要4-5秒,但我的问题是当我从iOs 查看详情

升级到 iOS 9 和 MobileFirst 7.1 后无法登录设备或模拟器上的应用程序

】升级到iOS9和MobileFirst7.1后无法登录设备或模拟器上的应用程序【英文标题】:UnabletologintoappondeviceorsimulatorafterupgradetoiOS9andMobileFirst7.1【发布时间】:2015-10-2013:16:46【问题描述】:当通过XCode构建并部署到设备或通过iOS模拟器时... 查看详情

MvvmCross 升级到 8.x 后,应用程序卡在 SplashScreen

】MvvmCross升级到8.x后,应用程序卡在SplashScreen【英文标题】:ApplicationgetstuckatSplashScreenafterMvvmCrossupgradeto8.x【发布时间】:2021-12-0807:21:14【问题描述】:我将所有MvvmCross库从7.1.2升级到8.0.0。根据mvvmcross文档中的“从7升级到8”教... 查看详情

将设备更新到 iOS 14.7.1 后,iOS Flutter 应用程序未运行

】将设备更新到iOS14.7.1后,iOSFlutter应用程序未运行【英文标题】:iOSflutterappnotrunningafterupdatingdevicetoiOS14.7.1【发布时间】:2021-10-1717:48:18【问题描述】:将我的iPhone11更新到iOS版本14.7.1后,我的Flutter应用程序不再启动。已执行的... 查看详情

iPhone 升级到 iOS 8.4 后在 Xcode 7 beta2 中成为不合格设备

】iPhone升级到iOS8.4后在Xcode7beta2中成为不合格设备【英文标题】:iPhonebecomesineligibledeviceinXcode7beta2afterupgradedtoiOS8.4【发布时间】:2015-07-0103:02:50【问题描述】:所以我正在我的iPhone6上进行测试,并且在iOS8.3上一切正常。升级到8.4... 查看详情

Xcode 8升级后iOS10应用崩溃,返回malloc错误

...之后一些以前工作的代码现在不再工作。当代码运行时,应用程序崩溃并在控制台中显示以下错误消息:malloc:*对象0x1700bea80的错误:未分配被 查看详情

从 Java 6 升级到 Java 7/8 后,Apple 推送无法正常工作

...问题描述】:我正在将通过APNS向Apple设备发送推送通知的应用程序从Java6升级到Java8。当使用相同的PKCS12证书文件在Java8上运行在Java6下工作的相同JAR时,如果我尝试发送推送, 查看详情

我可以将带有 iOS 8 扩展的应用程序部署到运行 iOS 7 的设备上吗?

】我可以将带有iOS8扩展的应用程序部署到运行iOS7的设备上吗?【英文标题】:CanIdeployappswithiOS8extensionstodevicesrunningiOS7?【发布时间】:2014-09-1313:44:53【问题描述】:我正在快速创建一个带有通知中心小部件的iOS应用程序。但是... 查看详情

如何在 Xcode 6.1 中安装 iOS 7.0 和 iOS 8.0 模拟器?

...的iPhone5升级到iOS8.1。现在,在这些操作系统中测试我的应用程序的唯一方法是使用模拟器。但是在将我的Xcode升级到6.1之后。我看不到i 查看详情

升级到适用于 iOS 的 ParseSDK 1.7.5 和 FacebookSDK 4.4.0 后出错

】升级到适用于iOS的ParseSDK1.7.5和FacebookSDK4.4.0后出错【英文标题】:ErrorafterupgradingtoParseSDK1.7.5andFacebookSDK4.4.0foriOS【发布时间】:2015-08-0601:24:04【问题描述】:当我尝试使用PFFacebookUtilsV4将Parse用户与Facebook链接时,它给了我以下... 查看详情

将 ImageMagick 版本升级到 6.7.8 后,ImageMagick convert pdf to jpeg 文本质量很差

】将ImageMagick版本升级到6.7.8后,ImageMagickconvertpdftojpeg文本质量很差【英文标题】:ImageMagickconvertpdftojpeghaspoortextqualityafterupgradingImageMagickversionto6.7.8【发布时间】:2013-03-2401:44:45【问题描述】:升级ImageMagick后,pdf转jpeg时文字质... 查看详情

Cordova IOS 8 选择元素

...布时间】:2014-09-2614:26:23【问题描述】:我最近将Cordova升级到3.6.3并将Xcode升级到6。我注意到在iOS上进行测试时,选择元素在单击时不再执行任何操作。这在iOS7.0/7.1中有效,但在我迁移到iOS8后在所有模拟器上都失败。这是一个... 查看详情

将 Oracle 数据库从 9.2.0.7 升级到 9.2.0.8

】将Oracle数据库从9.2.0.7升级到9.2.0.8【英文标题】:UpgradeOracledatabasefrom9.2.0.7to9.2.0.8【发布时间】:2010-06-1700:57:07【问题描述】:我们计划从Oracle9.2.0.7升级到9.2.0.8。建议升级的主要原因是解决与异常“终止并出现错误:ORA-00904:... 查看详情

如何将现有核心数据 iOS 7 应用程序的数据迁移到 iCloud?

】如何将现有核心数据iOS7应用程序的数据迁移到iCloud?【英文标题】:HowdoyoumigrateanexistingcoredataiOS7app\'sdataintoiCloud?【发布时间】:2014-02-2819:42:05【问题描述】:我有一个已经使用CoreData的iOS7应用。我已经使用新的iOS7方法将iCloud... 查看详情

将 iOS 项目部署目标从 8 降级到 7

】将iOS项目部署目标从8降级到7【英文标题】:DowngradeiOSProjectDeploymentTargetfrom8to7【发布时间】:2014-10-0908:52:31【问题描述】:我正在搜索如何将我的iOSSDK版本从8降级到7,因为对CoreData的访问已经改变我以前用过AppDelegate*appDelegate... 查看详情

更新到 iOS 8 后应用程序崩溃

】更新到iOS8后应用程序崩溃【英文标题】:ApplicationcrashafterupdatedtoiOS8【发布时间】:2014-09-2311:56:14【问题描述】:将XCode更新到6.0.1后,我的应用程序在启动时崩溃。dyld:Symbolnotfound:_OBJC_CLASS_$_NSLayoutConstraint我一开始就收到这个... 查看详情

升级到 iOS 13 后,钥匙串查询总是返回 errSecItemNotFound

...】:我将密码存储到iOS钥匙串中,然后检索它们以在我的应用程序上实现“记住我”(自动登录)功能。我围绕Security.framework函数(SecItemC 查看详情