한 번의 빌드로 여러 시뮬레이터에 설치 및 시작하는 CLI 도구를 만들었습니다
1build로 지정한 Simulator 전부에 app를 돌진하는 방법 싶다…수정되고 있는지의 화면 확인으로 build해 확인해 simulator 바꾸어 build해…라고 힘들다—
2018년 5월 24일 .
Bluepill 하지만 좋을지도 모르지만, Xcode가 복수 시뮬레이터 기동에 대응하고 나서 나는 사용하지 않아 되었습니다.
그렇다고는 해도, 복수 시뮬레이터를 기동해 확인은 꽤 귀찮은 작업이므로 나는 아래와 같은 느낌의 쉘 스크립트를 짜서 실행하고 있었습니다.
#!/bin/sh
path=~/Library/Developer/Xcode/DerivedData/MyProject-dldoglzedhzxknefqrrzqxdnugcb/Build/Products/Debug-iphonesimulator/MyProject.app
bundleIdentifier=me.fromkk.MyProject
devices=(91E81004-7BE9-4E84-9976-F721E649D2E5 A68CEEAA-3D2A-4ADA-A9A0-6CCAC8E80983 3FEF14D2-4BB4-4759-AB28-A62B97B96140 44EE068E-D87A-4C65-96E4-2199E3C7A9AA)
open -a "Simulator.app"
function bootIfNotBooted() {
device=$1
numberOfBooted=`xcrun simctl list | grep $device | grep Booted | wc -l`
if [ $numberOfBooted = 0 ]; then
xcrun simctl boot $device
fi
}
for device in ${devices[@]}; do
bootIfNotBooted $device
xcrun simctl install $device $path
xcrun simctl launch $device $bundleIdentifier
done
개인적으로는 이것으로 충분했습니다만, 인스톨 되고 있는 시뮬레이터도 사람에 따라서 다르고 UDID도 바뀌므로 이대로에서는 타인에게는 공유할 수 없지요.
이번에 이를 해결하기 위한 툴을 작성해 보았습니다.
만든 CLI 도구
설치 방법
설치는 README.md에도 기재되어 있습니다만, 아래와 같습니다.
git clone https://github.com/fromkk/Simulators.git
cd ./Simulators
make install
사용법
simulators [--project <project>] | [--workspace <workspace>] --scheme <scheme> --bundleIdentifier <bundleIdentifier> --beforeClean <beforeClean> --devices <devices> --osVersion <osVersion>
옵션은 이런 느낌입니다.
항목 | 설명 |
---|---|
--project | XXX.xcodeproj 경로 설정 |
--workspace | XXX.xcworkspace 경로 설정 |
--scheme | scheme 설정 |
--bundleIdentifier | bundleIdentifier 설정 |
--beforeClean | 빌드하기 전에 정리할지 여부 [true,false] |
--devices | 기기 이름 설정 [iPhone SE,iPhone 7,iPhone 7 Plus,iPhone X,etc...] |
--osVersion | OS 버전 설정[10.3,11.3,etc...] |
실행하면 아래와 같이 앱이 인스톨 된 상태로 복수의 시뮬레이터가 기동합니다.
htps : // 기주 b. 코 m / f 여 m k / 시무와 rs
요약
전부터 똑같이 불편을 느끼고 있던 부분이 타인도 곤란하고 있다고 생각한 일로 CLI 툴을 작성하는 후원을 해 주었습니다.
같은 일로 곤란한 사람이 있으면 꼭 사용해보십시오.
트윗을 보고 나서 3시간 정도로 만든 거친 도구이므로 여러가지 버그등 있을지도 모릅니다만, 발견하면 Issue나 PR 기다리고 있습니다.
만약, 마음에 들어 주시면 좋다나 스타🌟를 받을 수 있으면 기쁩니다.
Reference
이 문제에 관하여(한 번의 빌드로 여러 시뮬레이터에 설치 및 시작하는 CLI 도구를 만들었습니다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/fromkk/items/956648b3e4ecc864e324텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)