As ferramentas de desenvolvimento do iOS estão longe de ser amigáveis à linha de comando, tornando a automação uma tarefa muito difícil.
Abrir um simulador específico pode ser um grande aborrecimento, então aqui vai uma receita para abrir, compilar, instalar e executar um projeto específico via linha de comando.
build-and-run.sh
#!/bin/bash
# fully close the simulator and open the desired one
killall 'iOS Simulator'
open -a 'iOS Simulator' --args -CurrentDeviceUDID $UDID
# build:
xcodebuild -project *.xcodeproj -scheme $SCHEME -sdk iphonesimulator build SYMROOT=Build
# wait until there is a device booted
count=`xcrun simctl list | grep Booted | wc -l | sed -e 's/ //g'`
while [ $count -lt 1 ]
do
sleep 1
count=`xcrun simctl list | grep Booted | wc -l | sed -e 's/ //g'`
done
# uninstall old / install new
xcrun simctl uninstall booted $PACKAGE_NAME
xcrun simctl install booted `readlink Build/**/$APP_NAME.app || echo $PWD/Build/*/$APP_NAME.app`
# run app:
xcrun simctl launch booted $PACKAGE_NAME
Como você pode ver, usamos algumas variáveis de ambiente práticas:
UDID: o id do dispositivo que você deseja usar. isso pode ser encontrado com NOME DOxcrun simctl list
PACOTE : o ID do pacote do aplicativo final
NOME DO APP : o nome do aplicativo sem extensão .app
ESQUEMA: o esquema usado para compilar o projeto.
Como usar:
cd path/to/your/project
bash build-and-run.sh UDID=XXXX PACKAGE_NAME=com.example.app SCHEME=app APP_NAME=app