3

自 iOS 10.3 发布以来,Apple 添加了一项新功能,允许我们通过 usingsetAlternateIconName(_:completionHandler:)方法动态更改应用程序图标。到目前为止,如方法文档中所述,我们必须在项目.plist文件中提及备用应用程序图标的名称,分配给CFBundlePrimaryIcon键。

实际上,当使用静态图标(已直接添加到应用程序主包中的图标)时,它可以按预期工作,没有任何问题:

在此处输入图像描述

我的问题是:

是否有可能 - 或者是否有解决方法 -动态设置备用应用程序图标(例如:已从网络下载并保存在应用程序documents目录中的图标)?

4

1 回答 1

2

我不认为这是可能的。

setAlternateIconName(_:completionHandler:) API 在应用程序包中查找图标,并且不能更改为从沙箱中获取。

此外,Apple 很可能会审查您捆绑的应用程序图标,以避免使用相同的应用程序图标或类似于 Apple 应用程序的图标。

参考:https ://www.hackingwithswift.com/example-code/uikit/how-to-change-your-app-icon-dynamically-with-setalternateiconname

于 2017-09-10T12:40:40.293 回答