【问题标题】:UIImageView+AFNetworking fails to load image in aeroplane mode?UIImageView+AFNetworking 在飞行模式下加载图片失败?
【发布时间】:2012-05-10 11:03:21
【问题描述】:

我使用 AFNetworking 加载 RSS。 看来对 RSS 的 HTTP 请求已成功缓存在磁盘中。 即使在飞行模式下,RSS仍然可以显示。

但是对于RSS中的图片url,我使用UIImageView+AFNetworking分类加载,如果手机处于离线模式,加载失败...为什么?

这就是我初始化 SDURLCache 的方式:

  // configure the disk cache here
    self.cache = [[SDURLCache alloc] initWithMemoryCapacity:1024*1024 // 1 MB mem cache
                                                         diskCapacity:1024*1024*5 // 5 MB disk cache
                                                             diskPath:[SDURLCache defaultCachePath]];    
    self.cache.ignoreMemoryOnlyStoragePolicy = YES;
    [NSURLCache setSharedURLCache:self.cache];

这是加载图像的代码。

[self setImageWithURL:[NSURL URLWithString:URL] placeholderImage:[UIImage imageNamed:@"thumbnail_loading.png"]];     

【问题讨论】:

    标签: objective-c afnetworking


    【解决方案1】:

    试试cache.ignoreMemoryOnlyStoragePolicy = YES。如果曾经加载过图像,则应使用此设置将它们保存在磁盘上。

    【讨论】:

    • 嗨,马特,我已经尝试过该设置。这是相同的。我发现,发生了什么:应用程序在下午 3 点加载图像。标头说它在 3 小时内到期。下午 5 点,在离线模式下运行应用程序,AFnetworking 将返回缓存的副本。晚上 7 点,再次以离线模式运行应用程序,缓存内容过期,AFnetworking 将抛出异常,因为它未能与服务器重新验证内容。这里有另一个人提出的关于这个问题的问题:stackoverflow.com/questions/10250055/…
    猜你喜欢
    • 2017-10-28
    • 2018-07-16
    • 1970-01-01
    • 2020-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多