我有這個問題,我設置了一個公司的聯繫信息,由ABUnknownPersonViewController顯示。其中一個信息是Facebook頁面,如果我在模擬器上點擊它,它會在正確的頁面上打開Safari。在設備上,URL被FB應用攔截,除了我的時間表外,其他任何內容都不會打開。
我知道,當您嘗試使用方法-openURL:
在應用程序內部打開FB頁面URL時,會發生同樣的情況,並且我知道使用該片段可以輕鬆修復此問題。
打開並添加來自ABUnknownPersonViewController的Facebook頁面
NSURL *facebookURL = [NSURL URLWithString:@"fb://profile/113810631976867"];
if ([[UIApplication sharedApplication] canOpenURL:facebookURL]) {
[[UIApplication sharedApplication] openURL:facebookURL];
} else {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://facebook.com/pagename"]];
}
事實是,我已經嘗試通過使用應用程序的委託方法- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
(handleOpenURL:
已過時)攔截的URL,但它似乎並不被調用。
有沒有辦法攔截這個開放?