今更ながらSFSafariViewControllerについてまとめてみた

すでにいろんな方がまとめていますが、iOS9からSFSafariViewControllerというものが導入されます。
そしてSFSafariViewControllerを使用するとSafariとのCookie syncができるようなのでそこにフォーカスしてまとめてみようとおもいます。

スポンサーリンク

Cookie syncできるとなにが嬉しいの?

~ iOS8まで

アプリへの流入経路や広告のトラッキングをしようと思うと、Custom URL SchemeでSafariを起動してCookieを付与したり確認するということをする必要がありました。また、Safariの起動タイミング等によってはアプリのリジェクト原因にもなっていました。

何よりユーザーとして使っていてSafari立ち上がるとイラッとしますよね。

iOS9 ~

SFSafariViewControllerを使用すれば今までSafariを起動してやっていたことをアプリ内でやることができます。
無駄にSafariを立ち上げる必要がなくなったことに加えて、SafariやiCloud Keychainで保存しているID/Passwordの自動入力も動きます。

UIがカスタマイズできないので若干見た目が微妙だったりしますが、別なアプリが立ち上がるよりは便利になります。
ユーザーとして使っていてもいちいちホームボタン押してアプリをkillしたり、無駄なタブが残ったり、アプリにもどってきたりしたりする手間がなくなります。

使い方は?

使い方はとっても簡単です。

ちゃんとCookie syncできるのか

で、ここまで作ってみたものの気になるのがちゃんとSafariとCookieがsyncされるのかということかと思います。
ということで下記のようなページを作って実際に試してみました。

(ただボタンを押すとCookieをセットして表示するだけ…)

Cookie

試してみたところ

  • アプリで「TEST001」をクリック
  • Safariで同じページを開いて「TEST001」のCookieが反映されていることを確認
  • Safariで「TEST003」をクリック
  • アプリで「TEST003」のCookieが反映されていることを確認

というわけでSafaiとSFSafariViewControllerの双方向でCookieのSyncができていることが確認できました。

使ってみて

iOS9もbeta1ということでまだまだ不安定感が半端ないです。
Cookie syncもアプリをkillしないとできなかったり、端末再起動しないと反映されなかったり、突然Cookieが吹き飛んだり。。。
現状だとリアルタイムでーとかだと使い物にならないです。

早く安定しないかな。

スポンサーリンク
スポンサーリンク

コメントをどうぞ

メールアドレスが公開されることはありません。