2013-08-01 9 views
8

Sto provando a lanciare un'applicazione cordova usando l'icona del telefono e non posso cambiare l'icona predefinita dell'app per iOS - (le icone reali non sono la schermata iniziale). Le icone predefinite vengono sempre copiate nella cartella Resouces -> icons e non nelle mie icone personalizzate. Ho usato i metodi specificati da PhoneGap che suggeriscono di aggiungere un tag icona nel file config.xml ma questo non funziona? Riavviare xcode e riavviare la mia app, e cancellarlo dal simulatore/dispositivo non funziona.L'icona dell'app non cambia all'icona personalizzata usando cordova

Questo è il mio file config.xml dove sto specificando le icone ...

... 
<icon src="icon.png" /> 
<icon src="icon/ios/icon.png" gap:platform="ios" width="57" height="57" /> 
<icon src="icon/ios/[email protected]" gap:platform="ios" width="114" height="114" /> 
<icon src="icon/ios/icon-72.png" gap:platform="ios" width="72" height="72"/> 
<!-- retina iPad support: PhoneGap 2.5.0+ only --> 
<icon src="icon/ios/[email protected]" gap:platform="ios" width="144" height="144"/> 
... 

Qualsiasi aiuto sarebbe fantastico!

p.s. ho ovviamente controllato tutti i post correlati che ho trovato su questo e senza fortuna

+0

Controlla la mia icona molto completa FAQ per Cordova 5.1.1 qui: deve leggere perché molte cose non funzionano come previsto! http://stackoverflow.com/a/31674547/82609 –

risposta

4

Ho affrontato lo stesso problema, e nonostante la ricerca di un definitivo non ho avuto fortuna cercando di aggiungere i tag icona nel config.xml, né da memorizzando le mie icone nella cartella www/icon in modo che Cordova Build possa copiarle come probabilmente previsto. La documentazione non è affatto chiara, sparsi per post e soluzioni diversi.

Quindi ciò che funziona per me è il seguente, anche se penso che non sia la soluzione più elegante ma funziona.

Aprire il progetto XCode e memorizzare le icone nella cartella Risorse/icone o in alternativa selezionare il progetto di destinazione, andare su Riepilogo e scorrere verso il basso fino a visualizzare le icone, fare clic su una di esse e fare clic con il pulsante destro del mouse e selezionare Apri in finder in modo da avere la posizione corretta per sovrascrivere quelle predefinite.

Assicurarsi di utilizzare gli stessi nomi che vengono utilizzati nella cartella di destinazione per evitare confusione e PULITO vostro progetto e BUILD di nuovo.

È probabile che se si esegue il progetto nel simulatore o nel dispositivo venga visualizzata l'icona predefinita, in tal caso basta disinstallare l'app dal dispositivo e ricostruirla.

Speranza che aiuta, però mi aspetto di avere invece un metodo per modificare il www di sviluppo e lasciare Cordova costruire copia le icone e splashcreen.

+0

Clean + rebuild ha risolto il problema. Grazie. – kernix

0

My La versione di Cordova è 3.5.0-0.2.7.
Funziona ma richiede un set di icone. Sto testando con Andoid. Reference (Document) here

<icon src="www/res/icon.png" /> 
<platform name="android"> 
    <icon src="www/res/android/ldpi.png" density="ldpi" /> 
    <icon src="www/res/android/mdpi.png" density="mdpi" /> 
    <icon src="www/res/android/hdpi.png" density="hdpi" /> 
    <icon src="www/res/android/xhdpi.png" density="xhdpi" /> 
</platform> 

ho messo quelle icone nella cartella res che si trova nella cartella/www.

Ora, per il tuo IOS. Dovrebbe essere il simile. (Non posso confermare. Non ho IOS SDK.)

<icon src="www/res/icon.png" /> 
<platform name="ios"> 
    <icon src="www/res/ios/icon-60.png" width="60" height="60" /> 
    <icon src="www/res/ios/[email protected]" width="120" height="120" /> 
    <!-- and more.. (please follow the reference)--> 
</platform> 

disinstallare l'applicazione in emulatore o un dispositivo e riprovare.
Spero che questo aiuto. In bocca al lupo.

+0

L'icona senza densità viene ignorata per Android. L'icona senza altezza/larghezza potrebbe ignorare le altre icone per iOS e l'ordine di dichiarazione è importante. Vedere le mie FAQ qui http://stackoverflow.com/a/31674547/82609 –

3

Questo metodo funziona ma è necessario il percorso completo compreso www. <icon src="www/img/logo.png" />

Questo metodo era come pensavo che avrebbe dovuto funzionare ma non è stato così. <icon src="img/logo.png" />

versione 4.0.0 Cordova

+0

Sì, questo percorso è relativo alla radice e non relativo a 'www', quindi deve includere' www' nel percorso (se necessario). Ma funziona bene solo per iOS e non per Android vedere le mie FAQ qui http://stackoverflow.com/a/31674547/82609 –

+0

Questo ha funzionato per me. Ho dovuto aggiungere www/icon.png. Grazie – Tony

0

Utilizzando il gancio dal this website fa il trucco per me. Questo Hook è solo un JavaScript che viene eseguito durante (il tempo di esecuzione può essere configurato) il processo di compilazione. Questo è un ottimo modo per mantenere il contenuto nella directory platforms/android generico e non è necessaria alcuna modifica dei file di configurazione.

PS: utilizzare i comandi semplici console.log() in Hook per vedere che cosa si fa esattamente durante la compilazione (nella CLI).

0

La mia versione Cordova è 4.2. Tuttavia sto testando su Android.

Durante la compilazione, PhoneGap copia le icone dalla cartella www/res/icons/ios nella cartella di Android di ant-build, quindi le icone personalizzate non vengono mai utilizzate e sempre sostituite dal valore predefinito.

Suggerisco di eseguire una cordova build --verbose e di esaminare attentamente il log della console e vedere se si comporta in modo anomalo.

Buona fortuna!

3

Ho avuto lo stesso problema (icona cambiato di nuovo a quella di default, anche quando ho avuto i miei percorsi impostato correttamente), cambiando la linea

<preference name="prerendered-icon" value="true" /> 

in config.xml da true a false risolto il problema per me.

Problemi correlati