gpt4 book ai didi

ios - 在每个应用启动时使UIWebView像新的一样

转载 作者:行者123 更新时间:2023-12-01 18:01:15 27 4
gpt4 key购买 nike

如果有人可以回答,那么这个简单的问题将是很棒的。

我有一个用于登录特定服务的简单UIWebView。但是,当我重新加载应用程序时,它保持登录状态。我需要做的是每次应用程序启动时都像新建一样创建UIWebView。我不确定界面构建器中是否有选项,或者我可以在应用终止时调用的方法中放置某种方法,以便它释放WebView或其他内容。

最佳答案

您需要做的是不保存UIwebView的缓存。您可以使用以下简单代码来完成此操作:

NSURLCache *sharedCache = [[NSURLCache alloc] initWithMemoryCapacity:0 diskCapacity:0 diskPath:nil];
[NSURLCache setSharedURLCache:sharedCache];

将代码放在UIwebview代码中。

或者在ApplicationDidFinishLoad中(或类似的东西,哈哈),您可以使用以下方法删除缓存:
[[NSURLCache sharedURLCache] removeAllCachedResponses];

编辑:

您已在评论中提出了一些问题。您可以执行类似以下代码的操作:
    NSURLRequest *request = [[NSURLRequest alloc] initWithURL:[NSURL URLWithString:@"http://www.google.com"]];

UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectMake(0.f, 0.f, [UIScreen mainScreen].bounds.size.width, [UIScreen mainScreen].bounds.size.height - 20.f)];
[webView setAutoresizingMask:(UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth)];

//No Cache\\

NSURLCache *sharedCache = [[NSURLCache alloc] initWithMemoryCapacity:0 diskCapacity:0 diskPath:nil];
[NSURLCache setSharedURLCache:sharedCache];

//No Cache\\

webView.delegate = self;
[webView loadRequest:request];
[self.view addSubview:webView];

好,

删除特定请求
[[NSURLCache sharedURLCache] removeCachedResponseForRequest:NSURLRequest];

或从UIWebView删除所有cookie
for(NSHTTPCookie *cookie in [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies]) {

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

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

祝好运,
内森

关于ios - 在每个应用启动时使UIWebView像新的一样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9459085/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com