SORU
29 Mart 2011, Salı


Takas UİWebview önbellek

UİWebview web sayfası [self.webView stopLoading]; diyorum o sahneye çıktığımda loadRequest: yöntemi kullanarak yük ve web görünümü serbest bırakmak için kullandım.

Etkinlik izleyicisi üzerinde ilk defa piyasaya gerçek bellek 4 MB ve çoklu başlattı arttı/gerçek bellek yükleniyor artış olmadığını gördüm. Sadece bir kez artıyor.

Bu web görünümü sayısını korumak kontrol ettim. Uygun olan budur, yani, 0. UİWebView bazı verileri önbelleğe olduğunu düşünüyorum. Nasıl önbelleğe alma önlemek veya önbelleğe alınan veriler kaldırabilirim? Yoksa bunun başka bir nedeni var mı?

CEVAP
9 NİSAN 2011, CUMARTESİ


Ben aslında UIWebView kapattığınızda önbelleğe alınan bilgileri korumak olduğunu sanıyor. Benim UIWebView kaldırma UIViewController, onu bırakmadan, o zaman yeni bir tane oluşturmaya çalıştım. Yeni bir tam adresine geri her şeyi (UIWebView benim önceki kaydedildi hatırladım) yeniden yüklemek zorunda kalmadan gittiğimde olduğumu hatırladım.

Birkaç öneri:

[[NSURLCache sharedURLCache] removeCachedResponseForRequest:NSURLRequest];

Bu özel bir istek için önbelleğe alınan yanıt çıkarıyoruz. Ayrıca tüm istekleri UIWebView koştu önbelleğe alınan tüm yanıtları kaldıracak bir çağrı var:

[[NSURLCache sharedURLCache] removeAllCachedResponses];

Bundan sonra UIWebView ile ilişkili çerezleri silmeyi deneyin

for(NSHTTPCookie *cookie in [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies]) {

    if([[cookie domain] isEqualToString:someNSStringUrlDomain]) {

        [[NSHTTPCookieStorage sharedHTTPCookieStorage] deleteCookie:cookie];
    }
}

Bu seni nereye götürür, bana haber ver.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Adam Outler

    Adam Outler

    19 EKİM 2006
  • HSmasteryoda .

    HSmasteryoda

    22 Ocak 2010
  • mliskIT

    mliskIT

    29 Mart 2012