2010-01-05 7 views
13

Possiedo un numero di app simili per funzionalità e interfaccia utente. Creo l'interfaccia utente raccogliendo variabili da un file .plist. Ad esempio, salvi la sorgente dell'API da dove raccolgo i dati.Esiste un'API o qualsiasi altro metodo per automatizzare la procedura di invio?

La creazione di una nuova app comporta semplicemente la modifica dei valori nel file .plist e la ricostruzione dell'app e infine l'invio all'App Store. Inoltre, ho bisogno di creare file di provisioning Ad-Hoc e creare anche versioni di test.

Desidero automatizzare questo processo. Per questo ho bisogno di:

  1. Costruire l'app tramite l'interfaccia della riga di comando.

  2. Carica il file binario e altri file/informazioni richiesti (icona dell'app, descrizione, ecc.) Su iTunes Connect.

Eventuali puntatori dove dovrei guardare?

+0

ho appena visto appmakr.com. Stavo pensando su linee simili. Come fanno ad inviare le app? Curl o POST standard? – Abhinit

+2

Su una nota personale, si prega di non inviare spam all'App Store con le applicazioni di tipo "Chiama Jim", "Chiama Mario", ecc. Il negozio è abbastanza affollato come è. Se stai facendo qualcosa come una guida di viaggio che gestisce più sedi o e-book, considera l'utilizzo di acquisti in-applicazioni e invia solo un'applicazione principale che conterrà tutto il contenuto. –

+0

Beh, li odio tanto quanto te. Voglio davvero automatizzare il più possibile il processo. Specialmente durante la fase iniziale di progettazione e layout. – Abhinit

risposta

7

È possibile automatizzare i progetti Xcode utilizzando lo strumento da riga di comando xcodebuild fornito da Apple.

Per quanto riguarda l'automazione del processo di creazione dell'app, Apple non ha esposto questa funzionalità al di fuori della GUI Xcode. Puoi ancora automatizzarlo e ci sono due opzioni.

  1. utilizzare Automator per creare uno script che riproduce tutte le azioni di un uomo avrebbe eseguito per creare un nuovo progetto . Parti di questo replay come il nome del progetto ecc. possono essere personalizzate e alimentate a livello di programmazione allo script. Uno svantaggio di questo metodo è che verrà effettivamente eseguito sulla GUI e sarà lento.

  2. Se si vuole fare tutto tramite la riga di comando , si dovrà reverse engineering del contenuto del file di progetto Xcode che ha l'.xcodeproj estensione. È un file compresso e contiene alcuni file di configurazione XML per l'intero progetto . Non c'è documentazione pubblica sul contenuto di questi file XML.

per automatizzare il processo di invio, avrete bisogno di uno script che parla itunesconnect.apple.com. Qui è dove invierai la tua app all'App Store. Per ulteriori informazioni su iTunes Connect, consulta this page. Qui uno strumento di automazione del browser sarà utile qui, anche se potresti stampare lo script personalizzato che parla con iTunes Connect su HTTP.

Per riassumere, l'unica cosa che può essere utilizzata facilmente fuori dalla scatola è lo strumento xcodebuild. Tutto il resto deve essere decodificato.

+0

Grazie Anurag! Ma immagino che pubblicare le app su iTunesConnect possa creare problemi in futuro. Cosa succede se Apple cambia il sito? Ci deve essere una via migliore là fuori. – Abhinit

+0

È vero, ma non può essere aiutato a meno che Apple non apra una sorta di API per iTunes Connect. Tra le opzioni disponibili uno script personalizzato è probabilmente migliore rispetto all'utilizzo di uno strumento di automazione del browser in quanto le modifiche alla GUI non dovrebbero influire sul tuo script. Si romperà, tuttavia, se gli elementi del modulo come l'attributo name cambiano. Per ridurre al minimo questo danno, puoi inserire tutti gli elementi richiesti su iTunes Connect all'interno di un file XML o di un altro file di configurazione e associarlo ai dati effettivi. – Anurag

+0

@ Anurag - cosa intendi al # 1? Usando l'automatore "guardami fare"? Funziona mai per qualcuno? Non ha mai funzionato per me, voglio dire, non dico mai che questa funzione funzioni correttamente per la pagina web più semplice o non la sto usando correttamente. – SpaceDog

11

È il 2016 e ora abbiamo lo strumento da riga di comando iTunesConnect Transporter con un quick start guide here.

Inoltre, uno sguardo a questo progetto OSS che avvolge gli strumenti Transporter (e altri) in modo amichevole:

https://fastlane.tools

+1

Questi strumenti sono fantastici! Tutti gli sviluppatori iOS dovrebbero conoscerli. A volte trascorro giorni a inviare applicazioni che dovrebbero essere minuti ora. – Idan

+0

Inoltre, se vuoi un provider cloud per tutto questo, dai un'occhiata a Bitrise.io - http://bitrise.io –

Problemi correlati