Значки запуска в приложении для Android и Xamarin.Forms

Я отчаянно пытаюсь выяснить, какие изображения использовать для значка запуска приложения Android, созданного с помощью Xamarin.Forms.

Я выяснил, что имя файла иконки (без суффикса) передается как атрибут класса MainActivity:

[Activity(Label = "AndroidTestApp", Icon = "@mipmap/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
    ...
}

Затем я прочитал о различных размерах значков в Интернете и создал следующие файлы с именами icon.png.

  • 48x48 px, 160 dpi, помещается в папку mipmap-mdpi
  • 72x72 px, 240 dpi, помещается в папку mipmap-hdpi
  • 96x96 px, 360 dpi, помещается в папку mipmap-xdpi
  • 144x144 px, 480 dpi, помещается в папку mipmap-xxdpi
  • 192x192 px, 640 dpi, помещается в папку mipmap-xxxdpi

Все файлы имеют действие сборки AndroidResource.

При первом запуске все файлы имели прозрачный фон, но казалось, что Android использовал значок по умолчанию в качестве значка запуска вместо моих тестовых значков.

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

Итак, я ищу подсказку, что я могу сделать не так. Это сами файлы png? Это имена файлов? Или папки? Или ничего из вышеперечисленного?

Документация Xamarin.Forms довольно скудна, независимо от того, что я ищу (по крайней мере, это мое первое впечатление).

0
0
2 238
2

Ответы 2

Я не знаю почему, но создание значка запуска в Интернете (одинаковые размеры, но, по-видимому, все файлы с разрешением 300 dpi), присвоение им другого имени и упоминание этого имени вместо icon во всех местах, где было упомянуто старое имя, сделало Хитрость. Теперь отображаются новые значки.

Единственное различие, которое я вижу (помимо имени файла и значения dpi), заключается в том, что неработающие файлы изображений (которые были добавлены по умолчанию при создании тестового проекта) имеют специальный инструмент под названием MSBuild:UpdateGeneratedFiles, упомянутый в их свойствах. которые нельзя удалить. В недавно добавленных новых файлах изображений этого нет.

Возможно, ваша исходная информация об изображении неполная или обрезана. Это также может привести к тому, что изображение не может отображаться в Android. Поэтому советуем попробовать использовать исходный источник.

Junior Jiang 29.10.2018 04:34

Я создал простой png-файл с помощью GIMP, но это не сработало. Я не делал с ним ничего особенного.

Nostromo 29.10.2018 13:22

Вы можете использовать эта ссылка для создания значков различного разрешения (только png), необходимых для приложений Android и iOS. Если вы готовы со значками, добавьте эти значки в папку drawable-xxxhdpi, xxhdpi, hdpi и drawable для ресурсов, а не в промежуточные папки. После добавления этих файлов вы можете установить их в классах Activity, как показано ниже.

[Activity (Label = "AndroidTestApp", Icon = "@ drawable / icon", Theme = "@ style / MainTheme",

Также убедитесь, что вы установили значок во всех действиях, которые вы должны рисовать / значок

Другие вопросы по теме