Subscribed unsubscribe Subscribe Subscribe

マーケターのプログラミング日記

東京、シンガポールを経てシリコンバレーで働く、マーケター。英語、プログラミング、データ分析は次世代マーケターの必須スキルだと信じて進む。

URL Schemesとはなんだ

MBAホルダーの理系インド人の部下に、プログラミング勉強を知られてしまい、彼も今週からなぜだかiOSプログラミング勉強を開始。俺たちマーケティング部署なんだけどな。ほとんど仕事関係ないんだけどな。負けず嫌いなとこ凄いよ。

さて、Facebook SDKを入れる時に、.plistからURL type->URL Schemesにfb+アプリIDを入れるプロセスが入っていたのだが、以下2点について調査したので簡単にまとめます。

  1. そもそもURL Schemesってなに?
  2. 具体的になんのため?

f:id:yuyutata:20150518225443p:plain

 

1.そもそもURL Schemesってなに?

自分で定義できるプロトコル。例えばhttp://というのもひとつのプロトコル。自分で定義することで同じ端末のアプリ間で情報の交換、切り替えがスムーズに行えるようです。

例えば、あるアプリのURL Schemesを、”pickers”と定義します。

f:id:yuyutata:20150523022944p:plain

そしてiOSのサファリに、"pickers://"と入れます。

f:id:yuyutata:20150523023115p:plain

すると、pickersと入れたアプリが自動的に立ち上がりました!

f:id:yuyutata:20150523023153p:plain

 

2.具体的になんのため?

2-1.Twitter Cardsの場合

Twitter Cardsの開発者ページにわかりやすい説明がありました(Creating URL schemes | Twitter Developers)。自分のアプリのURL Schemesに”birdland”と記述させます。Twitterアプリが、"birdland://"を呼び込むことで反応があれば、そのアプリがインストールされていることがわかるので、インストールさせてるユーザへはディープリンクを提供、インストールしていないユーザへはApp Storeへ飛ばしてダウンロードを促す。ということが実現されます。

2-2. Google Mapの場合

食べログアプリで、お店の場所を調べる時に”地図アプリで見る”でGoogle Mapが開く仕組みはまさにURL Schemesです。

f:id:yuyutata:20150523023713j:plain

2.3. Facebook SDKの場合

Facebook SDKの場合、Twitterと違い、ユニークのURL Schemesを入れるように指定されています。なんででしょう。

 

わかりません。おやすみなさい。。