Edited at

iOSコマンド操作

More than 1 year has passed since last update.


これは何か

Apple Configurator 2のコマンド版


インストール方法

App StoreからApple Configurator 2をインストール。

起動してメニューの「Apple Configurator 2」から「自動化ツールをインストール」を選択

あとはターミナルで任意のディレクトリで。

SSHで実行するときは追加コマンドが必要

$ sudo /bin/launchctl asuser 0 cfgutil list


アプリ(ipa)のインストール

エンタープライズAppやAdhocアプリのインストールにのみ用いる。

古いiTunesとかで取っているストアAppのインストールには不適

$ cfgutil install-app [filename].ipa


ステップ 1/3:同期を開始中 [1/3] [****************************] 100%
ステップ 2/3:“Application Name”を転送中 [2/3] [*************] 100%
ステップ 3/3:デバイスが転送を完了するのを待機中 [3/3]
Installed [filename].ipa on xxxxxxxxのiPhone (ECID: 0xXXXXXXXXXXXXX).

--- Summary ---
Operation "install-app" succeeded on 1 devices.


アプリのアンインストール

$ cfgutil remove-app [app identifier]


ステップ 1/2:同期を開始中 [1/2] [****************************] 100%
ステップ 2/2:同期中 [2/2] [*************************************] 100%
Removed com.example.app from xxxxxxxxのiPhone (ECID: 0xXXXXXXXXXXXXX).

--- Summary ---
Operation "remove-app" succeeded on 1 devices.


iOSデバイスの復元

最新iOSのインストールと初期化

$ cfgutil restore


ホーム画面アイコン配置の取得

app identifierを取るのにも使える

ファイルへの保存はリダイレクトで

$ cfgutil get-icon-layout > layout.json


ホーム画面アイコン配置の設定

取得したレイアウトファイルに準じてアイコンを配置する。

設定ファイルに記述され、iOSデバイスにインストールされていないアプリがある場合は、強制オプション(-f | --force)が必要

設定ファイルに記述がないアプリが、iOSデバイスにインストールされている場合は、設定ファイル以降にアプリ名昇順で配置

$ cfgutil set-icon-layout -f layout.json


バックアップ

iTunesのバックアップと同じ

$ cfg-util backup


リストア

$ cfg-util restore-backup


プロファイルのインストール

$cfgutil install-profile [filename].mobileconfig


プロファイルの削除

元のプロファイルがある場合はidentifierの代わりにファイル名の指定も可能

$ cfgutil remove-profile [profile identifier]


iOSデバイスの初期設定

「準備」に相当

監視モードにするときはDER形式の証明書が必要

地域と言語設定は、スキップさせるとバージョンによっては自動設定が効かないので注意が必要

※基本的に、macOS側の地域/言語設定が適用される。

$ cfgutil prepare \

--locale ja_JP \
--language jp \
--skip-all


iOSデバイス情報取得

$ cfgutil get [name]


例:全部

$ cfgutil get all




使用例

ブループリントの置き換えとかに。

同一設定を複数の場所でやるときとかに使えるかもしれない。


mydevice.command

# !/bin/sh

# ダブルクリックで実行できるように
cd `dirname $0`

# 初期化とOS最新化
cfgutil restore

# 準備、監視モード有効化
cfgutil prepare /
--supervised \
--host-cert supervisor.der \
--magic \
--name\
--locale ja_JP \
--language jp

# プロファイルのインストール
cfgutil install-profile iijmio-cellular.mobileconfig
cfgutil install-profile iOS設定.mobileconfig

# アイコンの配置
cfgutil set-icon-layout -f layout.json

# iOSデバイスの名前変更
cfgutil rename テスト用iPhone

# 壁紙変更
cfgutil set-wallpaper -s lock lockscreen.png
cfgutil set-wallpaper -s home homescreen.png



余談

automatorも使えるようになるけど使いづらかった。