2

iOSがURLをどのように処理するかについてはよくわかりませんが、私の電話では何か奇妙なことをしているようです...

アプリには「いいね」ボタンがあり、クリックするとFacebookアプリケーション(Facebookがインストールされていない場合はSafari)が開きます。どういうわけか、携帯電話でクリックすると「プレミアイン」アプリが開きます。FacebookアプリとPremierInnアプリの両方を携帯電話にインストールしていますが、次のコードを実行してもFacebookが開かない理由がわかりません。

NSURL *fanPageURL = [NSURL URLWithString:@"fb://page/BIG_NUMBER_HERE"];

if (![[UIApplication sharedApplication] openURL: fanPageURL]) { ... }

明らかな理由で、上記のコードではBIG_NUMBER_HEREをページ番号に置き換えました。

なぜこれがうまくいかないのか誰かが説明できますか?Premier Innアプリは、何らかの形でfb://urlsのハンドラーとして自分自身を「登録」できたでしょうか。

よろしく、

4

2 に答える 2

1

おっしゃるように、プレミアインは「fb」のハンドラーとして登録されているようです。アプリケーションが同じURLスキームを使用するのを防ぐための中央レジストリはありません。それは、開発者による幸運と合理的な名前空間の選択にかかっています。

編集:これの正規のソースが見つかりませんが、呼び出されるハンドラーアプリケーションは、最後にインストールされたものです。

于 2012-04-11T11:51:44.090 に答える
0

に変更しpageてみてくださいprofile

于 2013-04-05T04:47:24.817 に答える