Cambia il nome dell'app per iPhone in Xcode 4


106

Voglio cambiare il nome che viene visualizzato sotto l'icona dell'app sullo schermo dell'iPhone. Uso Xcode 4 e ho un obiettivo con le chiavi:

  • Nome visualizzato del pacchetto: $ {PRODUCT_NAME}
  • Nome del pacchetto: $ {PRODUCT_NAME}

Quello che voglio, il nome del mio progetto è ad esempio "test" ma voglio avere "MySuperApp". Allora, dove posso cambiarlo meglio? C'è un posto dove posso cambiare ${PRODUCT_NAME}?

Ci sono altri posti in cui devo cambiarlo?


Risposte:


176

Rispondi senza rinominare il file

Notare che di seguito è riportata una risposta che non richiede la ridenominazione del file .

Rispondi con rinomina file

OK, ecco cosa ho trovato, mi ci è voluto un po 'di caccia dopo aver letto questo post, quindi spero che questa risposta possa aiutare tutti:

1.Nel riquadro dei contenuti del progetto a sinistra, fare clic sull'icona Cartella.

Icona della cartella

2. Selezionare la linea blu di primo livello che rappresenta il progetto.

Icona del progetto

3.Se il riquadro Impostazioni (riquadro destro) non è aperto, fare clic sul pulsante per abilitarlo. Questo è il terzo pulsante nella barra degli strumenti "Visualizza" nell'angolo in alto a destra.

Terzo pulsante in "Visualizza"

4.Nel riquadro Impostazioni, fare clic sull'icona della carta con angoli piegati (proprietà del file).

File inspector

5. La prima cosa è il nome del progetto. Digitane uno nuovo, ti verrà chiesto di rinominare i file di contenuto del progetto.

Campo del nome del progetto

Dovrei aggiungere, questo lascerà la tua vecchia app con il nome originale nel simulatore, quindi devi ancora eliminarlo dal simulatore. Inoltre, tutti i file che hai creato nel vecchio pacchetto dell'app non verranno trasferiti al nuovo pacchetto (a meno che non li trovi nel Finder e li sposti).

(EDIT :) Un'altra nota importante. Rinominare il tuo bundle significa che l'identificatore del bundle dell'app che hai registrato con il portale di provisioning Apple non funzionerà più per quell'app. Dovrai generare un nuovo ID app e un nuovo profilo di provisioning per distribuire la tua app su un dispositivo fisico.


10
Questa è la risposta esatta. Non sono sicuro del motivo per cui l'altro è accettato.
samuraisam

Sì, questo è stato pubblicato subito dopo essere passato a XCode 4 e sono così felice di averlo fatto! È davvero eccezionale, spazza via MS Visual Studio .NET 2008 (il mio lavoro quotidiano).
Jay Imerman

Questo non funziona per me. Il campo Nome file è disattivato (bloccato). La soluzione corretta per modificare il nome del prodotto è la soluzione di John Friend di eliminare gli schemi associati al prodotto.
Duck

2
Noterei che l'unica cosa che non cambia automaticamente quando si cambia il nome del progetto in questo modo in Xcode è il nome del delegato dell'app. Non devi cambiarlo, ma penso che sia strano avere il vecchio nome lì. Di solito entro e lo rinomino manualmente nel browser degli oggetti Xcode, quindi cambio il riferimento in main.m con il nuovo nome file del delegato dell'app (e cambio tutti i riferimenti ovunque, inclusi i file .h e .m del delegato dell'app).
Joel

7
-1.000.000, questa risposta è sbagliata e dovrebbe essere cancellata. La risposta corretta è qui .
bobobobo

112

In Xcode 4, seleziona la tua destinazione, la scheda "Info" e imposta il campo "Nome visualizzato del pacchetto" sul nome che desideri (ad esempio "MySuperApp"). Questa è la soluzione più semplice e indolore.

Tutte le altre risposte qui descritte non riguardano il problema originale pubblicato: "Voglio cambiare il nome che viene visualizzato sotto l'icona dell'app sullo schermo dell'iPhone". Le risposte votate a favore di: Woody, Jay e youshunei sono OK ma cambieranno tutte il nome visualizzato E :

A) cambia il tuo App Bundle Identifier e causa un'incompatibilità tra la tua app e il Bundle Identifier che hai registrato con l'Apple Provisioning Portal (che è un problema se hai già distribuito la tua app o intendi inviare l'app)

O

B) si traducono in problemi di schema che altri hanno menzionato (cioè la necessità di eliminare / ricreare schemi esistenti)


1
Questa è la soluzione corretta, a meno che tu non stia cercando di causare un incredibile horror SVN a causa di file rinominati.
paulrehkugler

3
+10000: questa è l'unica soluzione che non causa problemi di schem né problemi di app store né problemi di svn, tuttavia, sembra che sia necessario disinstallare l'app per far apparire il nuovo nome del bundle: è quello che hai provato?
Christophe Blin

@ChristopheBlin Sul simulatore, questo è probabilmente il caso (a causa della memorizzazione nella cache di Xcode). Su un dispositivo reale, sfortunatamente non ricordo.
Chris

La modifica dell'identificatore nome_progetto tenta anche di modificare i nomi delle directory del progetto e così via. Quindi, se desideri visualizzare caratteri come "&" nel nome dell'app, non puoi farlo in questo modo.
Dalibor Filus

70

Modificalo nella scheda build della pagina delle impostazioni dei target

Come chiarimento: seleziona i target, seleziona il target che stai costruendo, ottieni informazioni, seleziona la scheda build, scrivi "nome prodotto" nella casella di ricerca e modificalo lì.


13
Come chiarimento, seleziona i target, seleziona il target che stai costruendo, ottieni informazioni, seleziona la scheda build, scrivi "nome prodotto" nella casella di ricerca e modificalo lì
Woody

3
Funziona bene qui se esegui prima una pulizia
Woody

10
In alternativa, è possibile fare doppio clic sul nome di destinazione e modificarlo poiché il valore predefinito di Nome prodotto è $(TARGET_NAME).
Michael Mior

7
In Xcode4 il processo è: selezionare Targets e Build Settings. Quindi digita il nome del prodotto nella casella di ricerca. Tuttavia, come è stato notato, è più facile fare doppio clic sull'app in Target, che è quello che finisco sempre per fare.
Snowcrash

questa procedura cambia anche l'identificativo del bundle, quindi iot non è possibile compilare l'app senza messaggio di errore.
headkit

17

Su Xcode 4, fai clic sul nome TARGETS 2 volte (non doppio clic), cambia nome e riavvia Xcode. Ha funzionato per me, è semplice. inserisci qui la descrizione dell'immagine


1
Speravo che funzionasse. Perché sembrava così semplice. Ma non funziona per xcode 4.5.2
Jay Q.

Non funziona nemmeno in Xcode 5, senza aggiornare anche il nome del prodotto (nella scheda delle impostazioni di build del target).
Jim Rhoades

9

Desideri modificare il nome visualizzato del bundle nel file .plist del progetto .

Bundle display name : ${PRODUCT_NAME}   

dovrebbe essere cambiato in

Bundle display name : MySuperApp

Ciò cambia l'etichetta dell'icona in iOS senza effettivamente modificare gli identificatori dell'app. Se modifichi solo il nome visualizzato del bundle, non avrai bisogno di configurare un nuovo ID app e profili di provisioning.


6

Effettuare la modifica del nome del prodotto: fare doppio clic sul nome proprio sotto "Target" e modificare il nome del target come si desidera.

Verificare se la modifica è stata apportata: fare clic su "Target" e sul lato destro cercare "Nome prodotto" in "Impostazioni build". Il valore visualizzato del nome del prodotto dovrebbe riflettere la tua modifica. In caso contrario, fai doppio clic su quel nome per assicurarti che sia impostato su $ (TARGET_NAME).


5
  1. Seleziona Project
  2. Seleziona Target e fai clic per modificare e rinominare e il gioco è fatto
  3. Puoi vedere che il nome del prodotto viene cambiato

Ecco lo scatto di questi 3 passaggi

inserisci qui la descrizione dell'immagine

Modificato: ho notato la risposta simile con l'immagine allegata da youshunei dopo il mio post. Quindi, aggiungerei qualche informazione in più qui che l'ho testato su Xcode 6.3.2 e non ha bisogno di alcun riavvio.

Modificato: quando ho rinominato una delle mie app Mac OS X che contiene una virgola nel nome allo stesso modo. Ho un file mancante (nome tagliato fino a virgola) in qualche libreria di collegamento pod. Quindi, devo rinominare la mia app in Target -> Impostazioni build -> Nome prodotto


4

Per modificare il nome dell'app se è stata personalizzata:

Informazioni sul progetto -> Obiettivi (fare clic sulla voce dell'icona dell'app) -> Impostazioni build -> Nome prodotto


3

Nelle versioni recenti di XCode (attualmente sono sulla 4.3.2), $ (PRODUCT_NAME) è impostato su $ (TARGET_NAME) che per impostazione predefinita è il nome della directory del progetto (no, non modificare il nome della directory).

Soluzione: fare clic sul navigatore di file. Fare clic sull'icona blu del progetto. Cerca l'elenco TARGET (sotto l'elenco PROJECT). Fare clic con il mouse sul target; quindi rinominalo con il nome del tuo prodotto.


A parte: se hai problemi di firma del codice, ho scoperto che l'eliminazione, la revoca e la rigenerazione di tutti i certificati / chiavi e profili hanno risolto il mio problema. Ho provato prima tutto il resto!


1

Una cosa che sembrava aiutare quando ho affrontato questo problema è che in Xcode 4 è sembrato necessario eliminare tutti gli schemi. Prima di questo sembrava che, sebbene l'app fosse stata compilata con il suo nuovo nome, sarebbe stata come il vecchio nome nel simulatore. Tuttavia, ho fatto altre misure disperate come riavviare xcode ed eliminare l'app dalla cartella del simulatore, quindi è difficile essere certi che l'eliminazione degli schemi fosse la chiave.


questa è l'unica soluzione per rinominare un prodotto in Xcode 4, che tra l'altro, odio con passione. Voglio solo che Xcode 3 sia migliorato. È molto meglio.
Duck

Deve esserci qualcosa nei progetti di John o Digital che ha imposto quel requisito. Ho 2 schemi nel mio progetto: Debug e Release. Grazie per aver pubblicato la risposta, ciò che funziona per alcuni potrebbe non funzionare per altri.
Jay Imerman

1

Il problema che stavo riscontrando era che ho più file Info.plist nel mio progetto Xcode. Per assicurarmi di avere quello giusto che contiene il nome del prodotto, ho spostato temporaneamente l'Info.plist esistente per forzare Xcode a permettermi di sceglierne un altro. Poiché Info.plist non fa parte di un target, ma parte della configurazione del progetto, questo era l'unico modo che ho trovato per farlo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.