iOS 10.3 - 如何以编程方式更改应用程序图标
iOS 10.3 - How to change app icon programmatically
iOS 10.3 带有动态应用程序图标更改功能。开发者现在可以在不更新应用程序的情况下更改应用程序图标。
我想动态更改我的应用程序图标,如何以编程方式更改我的应用程序图标。
提前致谢。
是的,iOS10.3 终于让开发人员能够以编程方式更改其应用程序的图标。
可以从 iOS 10.3 更改 appIcon。为此,您需要在 info.plist
中将 supportsAlternateIcon
设置为 Yes
。
主要图标和次要图标都应添加到应用 Info.plist
文件的 CFBundleIcons
键中。
//Info.plist
<key>CFBundleIcons</key>
<dict>
<key>CFBundleAlternateIcons</key>
<dict>
<key>Icon1</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>alternater1</string>
</array>
<key>UIPrerenderedIcon</key>
<false/>
</dict>
<key>Icon2</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>alternater2</string>
</array>
</dict>
</dict>
</dict>
要更改应用程序图标,需要调用 UIApplication 方法:
Objective C:
[[UIApplication sharedApplication] setAlternateIconName:@"alternater2" completionHandler:^(NSError * _Nullable error) {
NSLog(@"Error...");
}];
Swift 3:
if UIApplication.shared.supportsAlternateIcons{
UIApplication.shared.setAlternateIconName("alternater2", completionHandler: { (error) in
print(error ?? "")
})
}
更详细的教程见:
Apple Document: setAlternateIconName(_:completionHandler:)
How to change your app icon dynamically with setAlternateIconName()
iOS 10.3 带有动态应用程序图标更改功能。开发者现在可以在不更新应用程序的情况下更改应用程序图标。
我想动态更改我的应用程序图标,如何以编程方式更改我的应用程序图标。
提前致谢。
是的,iOS10.3 终于让开发人员能够以编程方式更改其应用程序的图标。
可以从 iOS 10.3 更改 appIcon。为此,您需要在 info.plist
中将 supportsAlternateIcon
设置为 Yes
。
主要图标和次要图标都应添加到应用 Info.plist
文件的 CFBundleIcons
键中。
//Info.plist
<key>CFBundleIcons</key>
<dict>
<key>CFBundleAlternateIcons</key>
<dict>
<key>Icon1</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>alternater1</string>
</array>
<key>UIPrerenderedIcon</key>
<false/>
</dict>
<key>Icon2</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>alternater2</string>
</array>
</dict>
</dict>
</dict>
要更改应用程序图标,需要调用 UIApplication 方法:
Objective C:
[[UIApplication sharedApplication] setAlternateIconName:@"alternater2" completionHandler:^(NSError * _Nullable error) {
NSLog(@"Error...");
}];
Swift 3:
if UIApplication.shared.supportsAlternateIcons{
UIApplication.shared.setAlternateIconName("alternater2", completionHandler: { (error) in
print(error ?? "")
})
}
更详细的教程见:
Apple Document: setAlternateIconName(_:completionHandler:)
How to change your app icon dynamically with setAlternateIconName()