2011-08-18 18 views
7

Abbiamo una versione sponsorizzata da AdWhirl di un'app (Moonrise) e vorrei offrire una versione $ .99 senza pubblicità.Crea due versioni - lite e pro - della stessa app

Per motivi di manutenzione, mi piacerebbe avere una singola app in cui cambio solo un paio di #defines per attivare e disattivare gli annunci.

Ma come faccio a compilare due diversi "pacchetti di app", per così dire, che hanno nomi e identificatori di bundle diversi?

Immagino che sto solo chiedendo un testa a testa prima di provarlo, e se c'è un trucchetto che dovrei pensare. Inoltre, se c'è un modo ancora più semplice per farlo, mi piacerebbe sapere (come dovrebbe essere comune tra gli sviluppatori).

Piano è quello di

  1. Creare un identificatore bundle, modificarlo nel -info.plist
  2. Creare una nuova applicazione con un nuovo nome, il cambiamento fascio Nome visualizzato e icona
  3. Fare un # definire o tale da non mostrare gli annunci
  4. Carica di App Store

ho perso qualcosa?

+0

possibile duplicato di [Come gestisco la creazione di una versione Lite vs Versione di un'app per iPhone?] (Http://stackoverflow.com/questions/549462/how-do-i-manage-building-a-lite- versione vs-paid-of-an-iphone-app) –

risposta

9
  1. Crea nuovo identificatore fascio
  2. Creare più un file .plist per la tua app (si può duplicare esistente)
  3. Cambio nome dell'applicazione, identificatore bundle e così via nel nuovo file .plist
  4. Add un altro obiettivo (si può duplicati esistenti)
  5. Trovate in impostazioni di destinazione "Info.plist" entrie e modificarlo nuovo
  6. Aggiungete un po 'di bandiera definito dall'utente in un contesto obiettivi s per contrassegnare ciò che uno di loro è LITE e un altro non è LITE
  7. schemi Configurare per target diversi

Se farete tutto bene, si sarà in grado di utilizzare solo progetto per costruire diverse versioni di esso.

+0

Grazie. Ma era come temevo, dal momento che toccando queste cose si rompe il compilatore. Non ha niente a che fare con "fare tutto bene", purtroppo. Dopo aver duplicato il target, ho ricevuto due prodotti con nome identico - dovrei preoccuparmi? Dopo aver impostato correttamente entrambi i target puntando alle modifiche, .plist, posso eseguirlo solo sul dispositivo. In modalità simulatore, si lamenta improvvisamente di una directory con uno spazio al suo interno, nel percorso della cartella del progetto. Inoltre, puoi spiegare cosa intendi per 7.? –

+1

Vedi qui: http://stackoverflow.com/questions/8456420/how-to-build-a-free-version-from-a-paid-version-without-duplicating-the-xcode-4 – dontWatchMyProfile

+0

Alcune versioni XCode più tardi funziona più o meno come hai descritto. Preferisco semplicemente duplicare la destinazione e trascinare i file e controllare la casella di controllo copia su file duplicati all'interno di XCode, perché il navigatore di progetto e di cartella è ancora buggato. Ora abbiamo un ispettore di file più bello che puoi attivare e vedere esattamente a quali obiettivi appartiene ciascun file. Gli schemi di solito non devono essere modificati e i duplicati di origine possono essere ridotti al minimo con le affermazioni #if. –

Problemi correlati