2017-11-01 9 views
0

特定のアプリケーションがインストールされているかどうかを検出しようとしていて、ドキュメントに従ってcanOpenURLメソッドが役立つ可能性があります。また、私はiOSの11日午前、およびドキュメントによると、iOSの9>のために、これは心に留めておくべき重要なことである:サービスキーの起動を指定しても、canOpenURLは常にfalseを返します

重要なアプリがiOSの9.0以降にリンクされている場合、あなたは 宣言する必要がありますこのメソッドに渡すURLスキーム。これを行うには、 LSApplicationQueriesSchemesキーをアプリのInfo.plistファイルに追加します。 このキーを使用して宣言されていないスキームに対してこのメ​​ソッドを呼び出す場合、このメソッド は、適切なアプリケーションがインストールされているかどうかにかかわらず、常にfalseを返します。 キーの詳細については、「LSApplicationQueriesSchemes」を参照してください。

Info.plistで、私はこのような何かを追加する必要があることを意味します、これまでのところは良い

<key>LSApplicationQueriesSchemes</key> 
<array> 
    <string>messenger</string> 
</array> 

を。しかし、私は、アプリがインストールされている場合は、このように、検出しようとすると:

if([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"messenger://"]]){} 

私はまだ偽取得...私はここに何をしないのですか?

+0

'messenger'は有効なスキームですか? – DonMag

+0

あなたのデバイスにメッセンジャーがインストールされているかどうか –

+0

Facebook Messengerを検出/オープンしようとしている場合は、おそらくScheme形式を使用する必要があります: ' fb-messenger-api' – DonMag

答えて

1

Facebookのメッセンジャーは、使用しています。そのURLスキームとして

<string>fb-messenger-api</string> 

関連する問題