2015-04-15 19 views
6

Il servizio CI che stiamo utilizzando al momento funziona da iOS 8.1 che (correggimi se ho torto) non supporta Apple Watch/WatchKit. Ho fatto qualche ricerca e curiosando su Xcode, ma senza risultato.Exclude App Extension (WatchKit) da Xcode build script/xcodebuild

Sto cercando un modo per escludere la mia estensione Apple Watch dalla build - tramite Run Build Script in Xcode, o quello che sarebbe ancora meglio è un modo per farlo direttamente tramite il comando xcodebuild.

Qualcuno ha qualche suggerimento?

risposta

5

guardo negli main target > build phases > target dependencies e main target > build phases > embed app extension s e rimuovere la roba WatchKit sia

+1

Grazie per la risposta - Questo funziona di sicuro, ma spero di poter utilizzare una sorta di script, che posso quindi attivare con un flag per il test, così possiamo mantenere l'estensione per l'app nel target per Dev/Beta/etc, ma non ce l'hanno per testare – Killian

0

Sto usando uno script PHP per rimuovere il file appex dell'estensione del tempo di esecuzione del progetto.

<?php 
 
$file = file_get_contents("./PROJECT_Name.xcodeproj/project.pbxproj"); 
 
$emKeyPosition = strpos($file, "/* EXTENSION NAME */ = { 
 
\t \t \t isa = PBXNativeTarget;"); 
 
$bPhPosition = strpos($file, "buildPhases = (", $emKeyPosition); 
 
$endPosition = strpos($file, ");", $emKeyPosition); 
 
$emString = "Embed Pods Frameworks */,"; 
 
$emFramePosition = strpos($file, $emString, $bPhPosition); 
 
$filelen = strlen($file); 
 
$previousComma = strrpos($file, ",", -($filelen-$emFramePosition)); 
 
$finalFmString = substr($file, $previousComma+1, $emFramePosition+strlen($emString)-$previousComma); 
 
$file = str_replace($finalFmString, "", $file); 
 
file_put_contents("./PROJECT_Name.xcodeproj/project.pbxproj", $file); 
 
?>

Fammi sapere in caso di problemi per ulteriori discussioni.