Safari View ControllerはiOS 9の新機能で、開発者はSafariベースのアプリ内ブラウザを有効化できます。このブラウザは、スタンドアロン版Safariの優れた機能を多数活用できます。そのメリットとしては、現在のログイン情報の利用、キーチェーンへのアクセス、自動入力などが挙げられます。
以前は、開発者はアプリ用に独自のブラウザを開発する必要がありました。そのため、ユーザーはこれらのブラウザでウェブを閲覧する際に、ログイン情報やキーチェーンにアクセスしたり、自動入力機能を使用したりすることができませんでした。その結果、おそらくご存知のとおり、ユーザーエクスペリエンスは理想的とは言えず、途切れ途切れになっていました。
Apple は、開発者が既に使用しているサイトやデータと、お気に入りのアプリとの間のギャップを埋めるために Safari View Controller を使用できるようにすることで、この問題を修正しました。
残念ながら、まだすべてのアプリがSafari View Controllerをサポートしているわけではありません。Gmail、Twitter、WhatsAppなど、一部の人気アプリは依然として独自の組み込みブラウザを使用しています。SFSafariViewController all the thingsは、この問題を修正することを目的とした新しい調整機能です。
SFSafariViewController をインストールすれば、すぐに使い始めることができます。この調整機能を有効にするために、特別なオプションや設定は必要ありません。
テストとして、公式Twitterアプリでリンクを開いてみましたが、期待通りに動作しました。証拠として、以下のBeforeとAfterの画像をご覧ください。
カスタムブラウザ(左)とSafari View Controller
左側はTwitter用のカスタムブラウザです。このブラウザには、現在のログイン情報、キーチェーンアクセス、自動入力機能はありません。右側には、Safari View Controllerで開いた同じリンクが表示されています。ご覧の通り、Safariに似ており、Safari View Controllerをサポートする他のアプリと全く同じです。ここでのメリットは多岐にわたりますが、前述したように、キーチェーンへのアクセスと自動入力が可能になります。
ボーナスとして、この調整はSKStoreProductViewControllerもサポートしているため、App Storeのリンクをアプリ内で開くことも可能です。ただし、この機能はまだ開発段階のようです。App Storeのリンクをアプリ内で開くと、アラートビューのポップアップが依然として表示され、余計な手間がかかっています。
この調整を制作した開発者MohammedAG氏のリリースを見て嬉しく思います。彼のリリースはいつも実用的で便利な追加機能のようですが、SFSafariViewControllerのあらゆる機能も例外ではありません。
この調整はBigBossリポジトリで無料で入手できます。ぜひお試しいただき、ご感想をコメント欄でお知らせください。