2013-08-01 3 views
8

Я пытаюсь запустить приложение cordova с помощью phonegap и не могу изменить значок приложения по умолчанию для iOS - (фактические значки не являются заставкой). Значки по умолчанию всегда копируются в папку Resouces -> icons, а не мои пользовательские значки. Я использовал указанные методы из phonegap, которые предлагают добавить тег значка в файл config.xml, но это не работает? Перезапуск xcode и перезагрузка моего приложения, а также удаление его из симулятора/устройства не работают.Значок приложения не меняется на пользовательский значок с помощью cordova

Это мой config.xml файл, в котором я задав значки ...

... 
<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"/> 
... 

Любая помощь будет удивительно!

p.s. я, очевидно, проверил все связанные должности, которые я мог найти по этому поводу, и не повезло

+0

Проверьте мой очень полный значок FAQ для Cordova 5.1.1 здесь: должен читать, потому что многие вещи не работают должным образом! http://stackoverflow.com/a/31674547/82609 –

ответ

4

У меня была та же проблема, и, несмотря на поиск окончательного, мне не повезло, что я добавил теги значков в файле config.xml, ни по сохраняя мои значки в папке www/icon, поэтому corova build может скопировать их, как ожидается. Документация не совсем понятна, разбросанная по различным сообщениям и решениям.

Так что для меня работает следующее, хотя я считаю, что это не самое элегантное решение, но оно работает.

Откройте проект XCode и сохраните свои значки в папке Ресурсы/значки или выберите целевой проект, перейдите в Сводку и прокрутите страницу вниз до тех пор, пока не увидите значки, щелкните по любому из них и щелкните по нему правой кнопкой мыши и выберите чтобы у вас было правильное местоположение, чтобы переопределить значения по умолчанию.

Обязательно использовать одни и те же имена, которые используются в целевой папке, чтобы избежать путаницы и ЧИСТЫЙ ваш проект и BUILD его снова.

Возможно, что если вы запустите проект в симуляторе или устройстве, появится значок по умолчанию, в этом случае просто удалите приложение с устройства и снова его создайте.

Надеюсь, что это поможет, однако я бы ожидал, что вместо этого будет предложен способ изменения дизайна www и пусть cordova build скопируйте значки и заставку.

+0

Clean + rebuild решила проблему. Благодарю. – kernix

0

My Cordova версия 3.5.0-0.2.7.
Это работает, но для этого требуется набор иконок. Я тестирую 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> 

Я ставлю эти значки, чтобы Рез папку, которая находится в папке/WWW.

Теперь для вашего IOS. Это должно быть похоже. (Я не могу подтвердить. У меня нет SDK IOS.)

<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> 

Удалите приложение в эмуляторе или устройстве и повторите попытку.
Я надеюсь, что эта помощь. Удачи.

+0

Значок без плотности игнорируется для Android. Значок без высоты/ширины может переопределить другие значки для iOS, и порядок объявления имеет значение. См. Мои FAQ здесь http://stackoverflow.com/a/31674547/82609 –

3

Этот метод работает, но вам нужен полный путь, включая www. <icon src="www/img/logo.png" />

Этот метод был таким, каким я думал, что он должен работать, но это не так. <icon src="img/logo.png" />

Cordova версия 4.0.0

+0

Да, этот путь относится к корню, а не по отношению к 'www', поэтому он должен включать' www' в путь (если необходимо). Но он работает только отлично для iOS, а не Android, см. Мои FAQ здесь http://stackoverflow.com/a/31674547/82609 –

+0

Это сработало для меня. Мне пришлось добавить www/icon.png. благодаря – Tony

0

Используя крюк из this website делает трюк для меня. Этот Крюк - это всего лишь JavaScript, который выполняется во время (время выполнения может быть настроен) процесс сборки. Это отличный способ сохранить содержимое в каталоге platforms/android, и никакая модификация файлов конфигурации не требуется.

PS: Используйте простые команды console.log() на крючке, чтобы увидеть, что именно сделано во время сборки (в CLI).

0

Моя версия Cordova - 4.2. Однако я тестирую Android.

Во время сборки телефонная книга копирует значки из папки www/res/icons/ios в папку андроидов res ant-build, поэтому пользовательские значки никогда не используются и всегда заменяются по умолчанию.

Я предлагаю выполнить строение кордовы - перевернутый и тщательно проходящий через консольный журнал и посмотреть, все ли это плохо.

Удачи вам!

3

У меня была такая же проблема (значок изменен обратно к умолчанию, даже когда я мои пути установлены правильно), изменив строку

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

в config.xml от истинного на ложное решена проблема для меня.

Смежные вопросы