LoginSignup
4
2

More than 1 year has passed since last update.

iOSアプリにSafari Web Extensionを同梱する方法

Posted at

SwiftUIでSafari Web Extensionを含めたiOSアプリを作成したいときにハマったのでまとめたいと思います。

XcodeでSwiftUIアプリのプロジェクト作成

Xcodeで新規プロジェクトを作成します。
今回はiOSとmacOSの両方から使用できるアプリを作成したいので [Multi Platform]タグの[App]を選択します。

iOSアプリのみを作成したい場合は[iOS]タグの[App]を選択して、interfaceにSwiftUIを選択して作成してください。

iOS用とmacOS用にSwiftUIのContentViewなどが共有リソースとなっているプロジェクトフォルダが作成されます。
58B76B24-8A1D-4CD3-9934-1CC123532BA5.png

Safari Web Extensionの追加

ここからプロジェクト設定画面を開き、ビルドターゲットを追加します。
67A43B60-BF79-4EC4-AFAF-E32CEC5949F5.png
[multiplatform]タブにはSafariWebExtensionがない(SafariAppExtensionはある)ので、iOSとmacOSそれぞれでSafariWebExtensionを追加します。
DDA8BEAC-790F-482C-91FB-F2F6C1DA574C.png

EmbendedApplicationに同梱したいiOSアプリのターゲットが設定されていることを確認します。
EBB0D13E-C448-4089-BE86-912991F7CD3C.png

8FF955A3-EA1D-4BD1-8D34-697E5C5B2947.png

シミュレータでの確認

追加されたら、iOSアプリのシミュレータを起動してみます。
mojikyo45_640-2.gif

シミュレータ状の設定アプリを開いて、同梱した拡張機能が表示されていれば成功です。
mojikyo45_640-2.gif
mojikyo45_640-2.gif

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2