【Safari】iOSアプリ内でWebページを表示できる「SafariServices」の使い方

村上 著者:村上

【Safari】iOSアプリ内でWebページを表示できる「SafariServices」の使い方

タイトル通り、iOS でアプリ内ブラウザを使う方法です。
Webページを Safari などの外部ブラウザで開きたくない時に使用します。
使用したのは、「SafariServices」という framework です。

参考にさせていただいた記事はこちら。

SFSafariViewControllerをとりあえず使ってみた – Qiita
https://qiita.com/okuderap/items/3bd2fa0cb508cbd00ffd

 

実装は、まず下記をインポートします。

import SafariServices

で、Web ページを表示したいタイミングで下記を実行すればOKです。

let url = URL(string: "[表示したいWebページのURL]")
if let url = url {
    let safariViewController = SFSafariViewController(url: url)
    present(safariViewController, animated: false, completion: nil)
}

ページを表示させるだけならこれだけで実装できます。

 

また、今回は必要なかったので私は実装していませんが SFSafariViewControllerDelegate を使って、ページの読み込み完了時や、「完了」ボタンが押された時などのタイミングで、任意の処理を実行することもできます。
詳しくは下記のページを参考にしてください。

SFSafariViewControllerDelegate – SafariServices | Apple Developer Documentation
https://developer.apple.com/documentation/safariservices/sfsafariviewcontrollerdelegate

 

以上、iOS アプリで Web ページをアプリ内ブラウザで表示する方法でした。
ご参考になれば幸いです。

  • この記事いいね! (0)

著者について

村上

村上 administrator