是否可以在应用程序运行时更改应用程序图标

时间:2021-06-24 06:45:14

标签: android ios flutter dart appicon

不是一个真正重要的问题,只是很好奇。您可以在运行时更改应用程序图标吗?例如,有一个按钮,当你按下按钮时,你会得到一个不同的应用程序图标(假设应用程序图标已经“设置”了)。 Android 和 iOS。

非常感谢任何输入。 谢谢

2 个答案:

答案 0 :(得分:0)

从 iOS 10.3 开始,开发者能够以编程方式更改应用图标。

有关详细信息,您可以参考此link,它显示了如何动态更改应用程序图标。

示例代码:

// change app icon to "Picture A"
@IBAction func pichuButtonDidTap(_ sender: UIButton) {
  changeIcon(to: "Picture A")
}

// change app icon to "Picture B"
@IBAction func pikachuButtonDidTap(_ sender: UIButton) {
  changeIcon(to: "Picture B")
}

// change app icon to "Picture C"
@IBAction func raichuButtonDidTap(_ sender: UIButton) {
  changeIcon(to: "Picture C")
}
func changeIcon(to iconName: String) {
  // 1
  guard UIApplication.shared.supportsAlternateIcons else {
    return
  }

  // 2
  UIApplication.shared.setAlternateIconName(iconName, completionHandler: { (error) in
    // 3
    if let error = error {
      print("App icon failed to change due to \(error.localizedDescription)")
    } else {
      print("App icon changed successfully")
    }
  })
}

答案 1 :(得分:0)

除非通过软件升级,否则您无法更改已签名并密封的 APK 中的清单或资源。

相关问题