Uitrol 31-10-2026 12:23

This commit is contained in:
jf
2026-10-31 12:23:34 +01:00
parent a0d36083e1
commit 5b791d5244
3 changed files with 137 additions and 4 deletions
+18 -4
View File
@@ -3,6 +3,8 @@
#
# tools/ios-bouwen.sh controle alleen kijken of de Mac er klaar voor is
# tools/ios-bouwen.sh simulator bouwen en starten in de iPhone-simulator (geen account nodig)
# tools/ios-bouwen.sh ipad zoals 'simulator', maar in de iPad-simulator (voor App Store-schermen);
# andere simulator: IOS_SIMULATOR="iPad Pro 13-inch (M4)" tools/ios-bouwen.sh simulator
# tools/ios-bouwen.sh toestel bouwen en op een aangesloten iPhone zetten (Apple-ID / team nodig)
# tools/ios-bouwen.sh archief een .ipa voor App Store Connect / TestFlight maken
# (betaald Apple Developer Program, distributiecertificaat en
@@ -43,11 +45,21 @@ case "$MODUS" in
controle)
controle
;;
simulator)
simulator|ipad)
controle
[[ "$MODUS" == "ipad" && -z "${IOS_SIMULATOR:-}" ]] && IOS_SIMULATOR="iPad Pro 13-inch (M4)"
stap "Bouwen en starten in de simulator"
# Eerst de lijst met simulators tonen, zodat je ziet welke je kunt kiezen.
xcrun simctl list devices available | grep -i iphone | head -5 || true
xcrun simctl list devices available | grep -iE 'iphone|ipad' | head -12 || true
APPARAAT=()
if [[ -n "${IOS_SIMULATOR:-}" ]]; then
UDID="$(xcrun simctl list devices available | grep -F " ${IOS_SIMULATOR} (" | head -1 | sed -E 's/.*\(([0-9A-F-]{36})\).*/\1/')"
[[ -n "$UDID" ]] || stop "simulator '${IOS_SIMULATOR}' niet gevonden; kies een naam uit de lijst hierboven (Xcode > Settings > Components voor extra simulators)."
echo "Simulator: ${IOS_SIMULATOR} ($UDID)"
xcrun simctl boot "$UDID" 2>/dev/null || true
open -a Simulator
APPARAAT=(-p:_DeviceName=":v2:udid=$UDID")
fi
# Eerst bouwen, daarna starten: met alleen -t:Run bouwt hij de app niet en weet hij niet wat
# hij moet starten. MetAndroid=false: op de Mac staat alleen de iOS-werkbelasting.
# CodesignKey=-: een eenvoudige lokale handtekening. De simulator wil geen certificaat, maar de
@@ -55,7 +67,9 @@ case "$MODUS" in
dotnet build "$PROJECT" -f "$TFM" -p:MetIos=true -p:MetAndroid=false \
-p:RuntimeIdentifier=iossimulator-arm64 -p:CodesignKey=-
dotnet build "$PROJECT" -f "$TFM" -p:MetIos=true -p:MetAndroid=false -t:Run \
-p:RuntimeIdentifier=iossimulator-arm64 -p:CodesignKey=-
-p:RuntimeIdentifier=iossimulator-arm64 -p:CodesignKey=- ${APPARAAT[@]+"${APPARAAT[@]}"}
echo
echo "Schermafdruk (zonder statusbalk-ruis, op ware grootte): xcrun simctl io booted screenshot ~/Desktop/ipad-1.png"
;;
toestel)
controle
@@ -98,6 +112,6 @@ case "$MODUS" in
echo "sleep de .ipa erin. Daarna staat de build na enkele minuten in App Store Connect > TestFlight."
;;
*)
stop "onbekende optie '$MODUS' (kies: controle, simulator, toestel of archief)"
stop "onbekende optie '$MODUS' (kies: controle, simulator, ipad, toestel of archief)"
;;
esac