ios - 无法使用 Xamarin 让应用程序图标适用于 iOS

标签 ios xamarin xamarin.ios

我已经尝试了所有我能找到的方法来让这些应用程序图标适用于 iOS。无论我做什么,它们都不会出现,我只能使用默认的 Xamarin 图标。我什至尝试制作一个全新的项目来重新开始,但我仍然坚持使用默认的 Xamarin 图标。我必须缺少一些东西。我拥有 AppIcon Assets 目录中的所有图标。 Info.plist 设置为 AppIcon 源。 Info.plist 文件正确指向 Assets.xcassets 文件夹的根文件夹。最后,根据其他论坛帖子,我尝试将“包含图像资源”列表添加到 .csproj,但没有成功。

我刚刚意识到的一件事是,我可以从根目录中完全删除 Assets 文件夹,而 Visual Studio 并不关心它何时构建。 这是令人难以置信的令人沮丧。这样做的原因为零,所以变得如此困难。提前谢谢你,我现在完全迷失了。

最佳答案

这可能就是答案,我遇到了完全相同的问题,并且投入了很多时间来尝试克服这个问题。

我创建了一个新的 Xamarin 解决方案,并在 Assets 目录中将所有 Xamarin PNG 替换为我自己的 PNG,并删除了所有 Xamarin 图像。应用程序和启动屏幕仍然显示 Xamarin Logo 。令人困惑和沮丧!

我正在运行以下环境:

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.

我正在运行 iOS 14.7.1 的 iPhone 7 Plus 上进行测试,并使用以下默认 Nuget 包:

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

Xamarin 图标/ Logo 来自哪里?

更新:我发现启动图标来自 Visual Studio 的热重启功能。我在 %HOMEPATH%\AppData\Local\Temp\Xamarin\HotRestart 文件夹中找到了启动图标图像。请参阅https://learn.microsoft.com/en-us/xamarin/xamarin-forms/deploy-test/hot-restart了解详情。从页面:

限制

  • 目前仅使用 Xamarin.Forms 和 iOS 设备构建的 iOS 应用程序 支持。
  • 仅支持 64 位 iOS 设备。从 iOS 11 开始,Apple 不再 允许在 32 位架构(早期的设备)上运行 iOS 应用程序 比 iPhone 5s)。
  • 不支持 Storyboard 和 XIB 文件,如果出现以下情况,应用程序可能会崩溃 它尝试在运行时加载它们。使用 HOTRESTART 预处理器 符号来阻止此代码执行。
  • 不支持静态 iOS 库和框架,您可能会看到 如果您的应用尝试加载这些,则会出现运行时错误或崩溃。使用 HOTRESTART 预处理器符号可防止执行此代码。 支持动态 iOS 库。
  • 您无法使用 Xamarin 热重启来创建用于发布的应用程序包。您仍然需要一台 Mac 机器来完成完整的操作 编译、签名和部署您的应用程序 生产。
  • 当前不支持 Assets 目录。使用热重启时,您的应用程序将显示 Xamarin 的默认图标和启动屏幕 应用。当与 Mac 配对或在 Mac 上开发时,您的 Assets 目录可以使用。

关于ios - 无法使用 Xamarin 让应用程序图标适用于 iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68704585/

相关文章:

android - 将来使用 catchError 捕获错误并抛出另一种类型

ios - 在 iOS 7 的后台一定时间后执行一行代码

sqlite - 如何使用Sqlite扩展创建OneToOne关系

.net - 应用程序在模拟器中运行,但在部署中给出 'could not resolve error'

ios - UINavigationBar 横向标题字体大小

ios - 使用 16 位 PCM 在 iOS 中生成音调,AudioEngine.connect() 抛出 AUSetFormat : error -10868

ios - NSTimer 在 Xamarin Ios 中的使用

c# - XamarinStore 已停止

xamarin.ios - 使用 mvxfilestore、mvvmcross 和 xamarin touch ios 8.1 拒绝访问

ios - 使用 Xamarin.Forms 应用填充 iPhone X 屏幕