Swift・iOS

Swiftを中心に学んだことを記録に残すブログです。技術に関係ない記事もたまに書いています。

【SwiftUI】外部リンクを開く実装

 

はじめに

外部リンクを開く実装についてメモ。

 

開発環境

 

本題

"open(_:options:completionHandler:)"を使って外部リンクを開く処理を実装すると以下のようになる。

※参考:https://developer.apple.com/documentation/uikit/uiapplication/1648685-open

Button("Write a Review") {
    guard let writeReviewURL = URL(string: "https://apps.apple.com/app/idXXXXXXXXXX?action=write-review")
    else { fatalError("Expected a valid URL") }
    UIApplication.shared.open(writeReviewURL)
}
.font(.system(size: 18))
.padding()

 

しかし、SwiftUIで用意された"Link"を使うとより簡潔に実装できるため、こちらを使用すればよい。

※参考:https://developer.apple.com/documentation/swiftui/link

if let writeReviewURL = URL(string: "https://apps.apple.com/app/idXXXXXXXXXX?action=write-review") {
    Link("Write a Review", destination: writeReviewURL)
        .font(.system(size: 18))
        .padding()
}

 

おわりに

簡単なメモ程度なので記事にするか迷ったのですが、"Link"は意外と見落としがちな気がしたので記事に残しておきました。

 

参考