Не удается заставить значки приложений работать для iOS с помощью Xamarin

avatar
ltsChase
8 августа 2021 в 20:38
564
1
2

Я перепробовал все, что смог найти, чтобы эти значки приложений работали на iOS. Что бы я ни делал, они не появятся, я застрял со значками Xamarin по умолчанию. Я даже пытался создать совершенно новый проект, чтобы начать с него заново, и я все еще застрял со значками Xamarin по умолчанию. Я должен что-то упустить. У меня есть все значки в каталоге ресурсов AppIcon. Для Info.plist задан источник AppIcon. Файл Info.plist правильно указывает на корневую папку папки Assets.xcassets. И, наконец, основываясь на других сообщениях на форуме, я безуспешно пытался добавить список Include Image Assets в .csproj.

Одна вещь, которую я только что понял, это то, что я могу полностью удалить папку Assets из корня, и Visual Studio не заботится о том, когда она собирается. Это невероятно расстраивает. Для этого нет никакой причины, так что будьте такими трудными. Спасибо заранее, я совершенно потерялся в этом месте.

Источник
Jason
8 августа 2021 в 21:27
2

пожалуйста, не размещайте код или ошибки в виде изображений. Потратьте время, чтобы вставить и отформатировать их как текст. Вы пытались удалить все папки bin и obj перед сборкой? И удалить все существующие копии вашего приложения с устройства/симулятора, чтобы убедиться, что оно не кэширует старые значки?

ltsChase
9 августа 2021 в 02:15
0

Я удалил все папки bin и obj перед сборкой пару раз. Я также удаляю все существующие копии приложения на устройствах перед его созданием. Не повезло. Эти значки отказываются появляться. Мне кажется, что он полностью игнорирует мой каталог активов, я могу удалить эту папку и не получить никаких ошибок при создании. Есть ли использование для добавления или что-то в этом роде?

ColeX - MSFT
9 августа 2021 в 06:31
0

Какая версия вашей визуальной студии и пакета Xamarin.Forms? Не могли бы вы обновить все до последней версии и попробовать еще раз?

Ответы (1)

avatar
JayAchTee
20 августа 2021 в 13:55
3

Это может быть ответом, и у меня точно такая же проблема, и я потратил много часов, пытаясь ее решить.

Я создал новое решение Xamarin и заменил все файлы PNG Xamarin своими собственными в каталоге ресурсов и удалил ВСЕ изображения Xamarin. Тем не менее приложение и экран запуска отображают логотип Xamarin. Сбивает с толку и разочаровывает!

Я использую следующую среду:

Microsoft Visual Studio Enterprise 2019
Version 16.10.4

Xamarin   16.10.000.234 (d16-10@ecaf29b)
Xamarin Designer   16.10.0.115 (remotes/origin/c750fbf1bde3c720d077f51640fe197c6dac7cbe@c750fbf1b)
Xamarin Templates   16.10.5 (355b57a)
Xamarin.Android SDK   11.3.0.4 (d16-10/ae14caf)
Xamarin.Android Reference Assemblies and MSBuild support.
    Mono: b4a3858
    Java.Interop: xamarin/java.interop/d16-10@f39db25
    ProGuard: Guardsquare/proguard/v7.0.1@912d149
    SQLite: xamarin/sqlite/3.35.4@85460d3
    Xamarin.Android Tools: xamarin/xamarin-android-tools/d16-10@c5732a0
Xamarin.iOS and Xamarin.Mac SDK   14.20.0.24 (c4b89cddb)
Xamarin.iOS and Xamarin.Mac Reference Assemblies and MSBuild support.

Я тестирую iPhone 7 Plus с iOS 14.7.1 и использую следующие пакеты Nuget по умолчанию:

NETStandard.Library 2.0.3
Xamarin.Essentials 1.6.1
Xamarin.Forms 5.0.0.2012 

Откуда появился значок/логотип Xamarin?

ОБНОВЛЕНИЕ. Я обнаружил, что значки запуска поступают из функции горячего перезапуска Visual Studio. Я нашел изображения значков запуска в папке %HOMEPATH%\AppData\Local\Temp\Xamarin\HotRestart<версия><код><проект>. Дополнительные сведения см. в разделе https://docs.microsoft.com/en-us/xamarin/xamarin-forms/deploy-test/hot-restart. Со страницы:

Ограничения

  • В настоящее время доступны только приложения iOS, созданные с помощью Xamarin.Forms и устройств iOS. поддерживается.
  • Поддерживаются только 64-разрядные устройства iOS. Начиная с iOS 11 Apple больше не позволяет запускать приложения iOS на 32-битной архитектуре (устройства более ранних чем iPhone 5s).
  • Файлы раскадровки и XIB не поддерживаются, и приложение может аварийно завершать работу, если он пытается загрузить их во время выполнения. Используйте препроцессор HOTRESTART чтобы предотвратить выполнение этого кода.
  • Статические библиотеки и платформы iOS не поддерживаются, и вы можете увидеть ошибки времени выполнения или сбои, если ваше приложение попытается их загрузить. Использовать Символ препроцессора HOTRESTART для предотвращения выполнения этого кода. Поддерживаются динамические библиотеки iOS.
  • Горячий перезапуск Xamarin нельзя использовать для создания пакетов приложений для публикации. Вам по-прежнему понадобится компьютер Mac, чтобы выполнить полный компиляция, подписание и развертывание вашего приложения для производство.
  • Каталоги активов в настоящее время не поддерживаются. При использовании горячего перезапуска ваше приложение будет отображать значок по умолчанию и экран запуска для Xamarin. Программы. При сопряжении с Mac или при разработке на Mac ваш ресурс Каталоги будут работать.