好吧,我發現了一個解決方案,在我的iOS應用程序中爲集成的UIWebView執行此操作。
當某人未登錄到Facebook時,彈出窗口打開並請求登錄。登錄後,用戶被重定向回到他按下按鈕的頁面。但是,在UIWebView中,這個重定向網址會爲用戶留下一個空白頁面。解決問題的方法是攔截重定向URL並使用類似按鈕重新加載頁面。
因此,使用UIWebView,可以在加載實際網頁並在特定網址上做出反應之前攔截請求。代碼如下:
- (void)viewDidLoad
{
[super viewDidLoad];
self.webview.delegate = self;
[self.webview loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.example.com/facebook_like_box.html"]]];
}
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
if([[request.URL description] rangeOfString:@"lugins/close_popup.php"].location != NSNotFound) {
// We intercepted the redirect URL of facebook after logging in. Instead of loading a blank page recall the URL of the like box
// manually on the uiwebview.
[self.webview loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.example.com/facebook_like_box.html"]]];
//returning NO indicates the the page is not further loaded.
return NO;
}
//Any other page should be loaded
return YES;
}
即使我有類似的問題。你能迅速提供給我嗎?這是新的。謝謝你.. – rAzOr
不工作..仍然相同的空白page.any更新在這? – karthikeyan