麦芽を支える技術

麦芽(ばくが、英語:malt)とは、麦、特に大麦の種子を発芽させたもので、ビール、ウイスキー、水飴の原料となる。(Wikipediaより)

iOSシミュレータのアプリをコマンドラインからDeepLink起動する

いつも忘れるのでメモ。

iOSシミュレータ内のSafari使ってDeepLink起動もできるけど、コマンドラインの方がサクサク叩ける。

Xcode Command Line Tools設定

以降で使用する xcrun コマンドの利用のため、もしXcode Command Line ToolsにXcodeアプリが指定されていなければ設定。

[設定場所]

  • Xcode
    • Preferences
      • Locations

f:id:asmz0:20190718113743p:plain:w600

iOSシミュレータデバイスのUDID確認

以下のコマンドでインストールされている全てのiOSシミュレータのデバイス一覧が表示できる。

$ xcrun simctl list

ただ、実際は起動中のデバイスデバッグすると思うので、以下のように起動中のものに絞り込んだ方がUDID確認しやすい。

$ xcrun simctl list | grep Booted
    iPhone Xʀ (XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX) (Booted) 

DeepLink起動

確認したデバイスのUDIDと、DeepLink起動URLを指定して実行。

$ xcrun simctl openurl XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX yourschema://host/path/to

これを実行すると、対象デバイスSafariでこのURLを起動しにかかるが、もしそれがDeepLink対象のURLであればアプリの方がそれを引っ掛けてDeepLink起動する。

DeepLinkの種類は「カスタムスキーマ起動」「Universal Links」どちらでも動作する。

終わりに

xcrun コマンド何気に多機能で色々ハックなこと出来たりしますよね。時間あったらまとめたいですね。(←やらないヤツの言い方)