2016-08-25 2 views
0
BOOL isInstalled = [[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"fb://"]] 

if (isInstalled) { 

} else { 

} 

Над кодом работает отлично с iPhone, но не iPad.Как проверить приложение fb на iPad?

+0

Вы тестирование на реальном IPad? Установлено ли приложение Facebook на iPad? Есть ли выход в консоли отладки при запуске этого кода через отладчик Xcode на вашем iPad? – rmaddy

+0

Какие версии iOS работают на каждом устройстве? – Wain

+0

Какова ваша версия ipad и после проверки вручную, fb установлен в вашем ipad или нет –

ответ

4

Во-первых, вам нужно «белый список» в URL, добавив следующие строки в ваш файл Info.plist

<key>LSApplicationQueriesSchemes</key> 
<array> 
    <string>fb</string> 
    <string>fbapi</string> 
    <string>fb-messenger-api</string> 
    <string>fbauth2</string> 
    <string>fbshareextension</string> 
</array> 

и проверить

if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"fb://"]]) { 
    // Facebook app is installed 
}else 
{ 
// not installed 
} 
+0

Поскольку OP утверждает, что код работает на iPhone, следует предположить, что все это уже сделано. И зачем добавлять все эти схемы, когда приложение использует только схему 'fb'? – rmaddy

+0

@rmaddy - Я согласен, что bro может быть, если fb не установлен в ipad или может установить 'fbapi: //", @ "fb-messenger-api: //", @ "fbauth2: //", @ "fbshareextension: // 'this нам нужно проверить –

+1

Нет, это приложение вызывает только вызов canOpenURL:' на схеме 'fb'. Поэтому только эта схема должна быть включена в белый список. – rmaddy

Смежные вопросы