ios - 如何在 iPhone 应用程序中实现本地缓存 Web 服务数据检索?

标签 ios iphone ios7 afnetworking

我是 iOS 的新手,我正在使用 AF-Networking 框架来获取 Web 服务并成功获取数据并将其加载到 UI 元素,现在我的问题是应用程序性能缓慢并且它正在从 Web 加载每次我想在本地缓存图像和数据并提高应用程序的性能时,任何人都可以帮助我找到合适的解决方案。

提前致谢

最佳答案

我觉得你说的和NSURLCache无关,而是把之前的网络请求数据保存到本地。然后下次在发送网络请求之前,您可以先从本地文件读取

有许多不同的方法可以在本地保存数据,例如 Core Data NSKeyedArchiver plist FMDB。这是我使用 NSKeyedArchiver 的方法。
(将接口(interface)放在此处,您可以在此链接 https://github.com/dopcn/HotDaily/blob/master/HotDaily/HDCacheStore.m 阅读实现)

@interface HDCacheStore : NSObject

+ (HDCacheStore *)sharedStore;
@property (copy, nonatomic) NSArray *mainListCache;
@property (copy, nonatomic) NSArray *funinfoListCache;
- (BOOL)save;

@end

在 XXXAppDelegate.m 中

- (void)applicationWillResignActive:(UIApplication *)application //Or some other place
{
    if ([[HDCacheStore sharedStore] save]) {
        NSLog(@"save success");
    } else {
        NSLog(@"save fail");
    }
}

关于ios - 如何在 iPhone 应用程序中实现本地缓存 Web 服务数据检索?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25805888/

相关文章:

ios - 使用 pushViewController 传递数据?

ios - 从框架加载初始 View

iphone - 忽略 iphone 上的 Https SSL 异常

ios - iOS 7 中 UISearchBar 隐藏 View

ios - MPMoviePlayerController 有时不播放本地视频

ios - 万向节信标发现

ios - 如何在 SwiftUI 中管理 AVPlayer 状态

iphone - IAP 完成时隐藏/取消隐藏 IBOutlet(UIButton)

java - 在 iphone 或 Java 上实现像 Scorched Earth Game 这样的地形破坏

ios - iOS7无线上网/网络录音怎么访问?