问题描述
我一直在尝试使用 CFBundleAlternateIcons 更改我的应用图标,但没有任何反应。
我实际上正在为 Flutter SDK 使用一个插件 - Flutter_dynamic_icon,当我使用该插件更改图标时,它会显示一个弹出窗口,显示“您已更改 MyApp 的图标”但没有任何更改。
我的问题似乎是这个问题的重复:[https://stackoverflow.com/questions/64426880/xcode-ios-cfbundlealternateicons-not-changes] 已经有了答案,但对我不起作用.
我也试图在媒体上做与这篇文章相同的事情:[https://medium.com/Flutter-community/programatically-change-ios-app-icon-in-Flutter-c9e84bc541a2] 和结果和我用 Flutter_dynamic_icon 的时候一样。
这是我的 info.plist:
<key>CFBundleIcons</key>
<dict>
<key>CFBundleAlternateIcons</key>
<dict>
<key>teamfortress</key>
<dict>
<key>UIPrerenderedIcon</key>
<false/>
<key>CFBundleIconFiles</key>
<array>
<string>teamfortress</string>
</array>
</dict>
<key>chills</key>
<dict>
<key>UIPrerenderedIcon</key>
<false/>
<key>CFBundleIconFiles</key>
<array>
<string>chills</string>
</array>
</dict>
<key>photos</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>photos</string>
</array>
</dict>
<key>UIPrerenderedIcon</key>
<false/>
</dict>
</dict>
我认为我的 info.plist 有问题。
有人遇到过这个问题吗?请帮帮我,非常感谢。
解决方法
我最近找到了答案,由于某些原因,当我直接在 Xcode 的 Runner 文件夹中添加图标图像并从中运行 flutter 项目时,我的应用程序只能动态更改应用程序图标。 如果您遇到上述问题,希望对您有所帮助。