it-swarm.com.ru

Ошибка: исходный путь не существует для значка Android png при сборке для ionic

Your system information:

Cordova CLI: 6.5.0
Ionic CLI Version: 2.2.1
Ionic App Lib Version: 2.2.0
OS: macOS Sierra
Node Version: v6.9.5
Xcode version: Xcode 8.2.1 Build version 8C1002

Я пытаюсь использовать ionic platform add Android для создания проекта Android, но он всегда жалуется, что resources/Android/icon/drawable-hdpi-icon.png не существует. На самом деле это не так - ни один из этих ресурсов не существует. Они могут быть созданы ionic resources.

Однако , если я пытаюсь запустить ionic resources без платформы, мне говорят сначала добавить платформу. Это заставляет меня делать что-то вроде:

ionic platform add Android
ionic resources
ionic platform rm Android
ionic platform add Android

Тогда это работает правильно. Могу ли я что-нибудь сделать, чтобы убедиться, что ресурсы добавлены правильно или на них есть ссылки перед добавлением платформы?

7
Explosion Pills

Это на самом деле было связано с моей конфигурацией. Если вы не указали платформу в своей конфигурации, platform add создаст ее для вас. Это автоматически включает пути к ресурсам, которых там может не быть.

Обновите ваш config.xml, чтобы включить платформу; даже если он пуст

<platform name="Android"/>
<platform name="ios"/>

Затем platform add не будет обновлять платформу в конфигурации и искать ресурсы, которые могут отсутствовать. Вы все еще должны сделать ionic resources, чтобы сгенерировать их после свершившегося факта.

10
Explosion Pills

Для меня в config.xml путь имел обратную косую черту в теге, изменил его с:

<icon src="resources\Android\icon\drawable-xhdpi-icon.png" />

чтобы:

<icon src="resources/Android/icon/drawable-xhdpi-icon.png" />
16
RohitAneja

В моем случае это была проблема пути config.xml.

Прежде чем у меня было это:

<icon density="hdpi" src="res/Android/ic-hdpi.png" />

но в моей структуре папок у меня есть дополнительная папка с именем icon , поэтому я изменяю все файлы пути .png на:

<icon density="hdpi" src="res/icon/Android/ic-hdpi.png" />

и это сработало для меня

3
dani24

Для меня эта проблема была из-за строки ниже в config.xml:

'<preference name="orientation" value="portrait" />'

На самом деле, когда вы пытаетесь добавить любую платформу, использующую «платформу ionic cordova add Android/ios», она добавляет соответствующую платформу и генерирует соответствующие ресурсы («icon.png» и «splash.png»). При книжной ориентации он будет добавлять только релевантные ресурсы к этой ориентации (т. Е. Ресурсы ionic cordova не добавляют ландшафтные изображения, если ориентация установлена ​​в портретную) и завершается с ошибкой «UnhandledPromiseRejectionWarning: Ошибка: Исходный путь не существует: resources/Android/icon/drawable-hdpi-icon.png "ошибка.
Поэтому, пожалуйста, проверьте, имеет ли ваш config.xml какие-либо предпочтения для портретного/ландшафтного режима.

Please remove any preference with portrait/landscape from your config.xml file before adding platform.
2
Sandy

Проверьте название заставки и значок приложения. Я ошибся в названии файлов. В моем случае ошибка произошла из-за неверных имен файлов. Я просто скопировал и вставил ресурсы, то есть AppName_splash.png и icon-512.png, в то время как это должны были быть «splash.png» и «icon.png». 

0
Akhilesh Sinha

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

ionic start appname blank 

затем скопируйте папку значков Android и вставьте в текущую папку приложения, это будет работать нормально. Изображение, пропущенное в вашем проекте, составляет 72 * 72 изображения. Пожалуйста, проверьте ресурсы один раз.

0
Manoj Rejinthala