2013-05-16 5 views
21

iOSでは、他のアプリから起動したり、データを渡すことができるようにURLスキームを設定できます。 URL識別子とは何ですか? URLスキームを指定するとき以外は使用されていないようです。URLの識別子とURLの体系

また、電話機に重複するURLスキームがあるとどうなりますか?

+0

「URL識別子」の参照はどこにありますか? – rmaddy

+0

2番目の質問については、[同じURLスキームを持つ複数のアプリ - iOS](http://stackoverflow.com/questions/13130442/multiple-apps-with-the-same-url-scheme-ios?rq=1)を参照してください。 。 – rmaddy

+0

@rmaddy XcodeのInfoタブのURL Typesセクションを見てください。生のInfo.plistでは、CFBundleURLNameにマップされます。 – Boon

答えて

6

Apple documentationによれば、識別子についての情報、それが必要な理由、または使用される場所についての情報はほとんどありません。彼らはユニークでなければならないと言います。

URLスキームの抽象名を含む文字列です。一意性を保証するには、逆のDNSスタイルのID(com.acme.myschemeなど)を指定することをお勧めします。 指定した文字列は、アプリのInfoPlist.stringsファイルのキーとしても使用されます。キーの値は、人間が読める形式の名前です。また

つ以上のアプリが同じURLスキームを指定した場合、その結果は予測できません:

注:複数のサードパーティ製のアプリは同じURLスキームを処理するために登録している場合があり、現時点では、どのアプリにそのスキームが与えられるかを決定するプロセスはありません。

最初にそのスキームを登録したアプリが開かれるとの経験が教えられましたが、が間違っている可能性があります。

+0

注:**あなたが 'info.plist'を見ると、**識別子**が** URL識別子**に対応していることがわかりますまたは** CFBundleURLName **。 – Senseful

+0

実際には、同じURLスキーム(同じアプリのliteとproバージョン)を持つ2つのアプリケーションがある場合、このフィールドは無視され、おそらく最初にインストールされたものになります。 –

関連する問題