【问题标题】:Unable to set alternate app icons in iOS 11无法在 iOS 11 中设置备用应用程序图标
【发布时间】:2017-12-23 11:07:57
【问题描述】:

我无法在 iOS 11(Xcode 9,beta 3)中将应用程序的图标更改为备用图标。

但是,它在 iOS 10.3 中运行良好(使用以下代码):

    if #available(iOS 10.3, *) {
        guard let iconName = MySingletonClass.sharedInstance.iconName() else { return }
        delay(0.01) {
            UIApplication.shared.setAlternateIconName(iconName, completionHandler: { (error) in
                if let error = error {
                    print(error.localizedDescription)
                } else {
                    print("Success!")
                }
            })
        }
    } else {
        // Fallback on earlier versions
    }

我的 plist 是这样设置的:

我觉得这很奇怪,因为我在 iOS 11 中使用过使用备用应用程序图标的其他应用程序。在 iOS 11 中是否存在已知错误?

注意:如果您想知道我为什么要使用延迟,see this post

【问题讨论】:

  • 您是否检查了supportsAlternateIcons 前期?
  • @BennX 怎么样?如果提供了 plist 值(如图所示),我认为这是一个只读属性

标签: ios swift xcode xcode9-beta


【解决方案1】:

我通过在 ViewController 中实现它来解决这个问题,而不是 AppDelegate 的 appDidFinishLaunchingWithOptions

正如相关问题/答案所指出的那样,仍然需要延迟运行它才能工作。

【讨论】:

    【解决方案2】:

    如果这没有帮助,请禁用应用图标资产。它帮助到我。 我猜资产和 plist 图标之间存在一些冲突。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-12-15
      • 2018-03-14
      • 1970-01-01
      • 2017-05-01
      • 2018-03-07
      • 1970-01-01
      • 2018-06-30
      • 1970-01-01
      相关资源
      最近更新 更多