zoukankan      html  css  js  c++  java
  • iOS 10.3+ 动态修改 App 图标

      支持系统:

    • iOS 10.3+
    • tvOS 10.2+

      Apple 官方文档  

      官方 API:

    @interface UIApplication (UIAlternateApplicationIcons)
    // If false, alternate icons are not supported for the current process.
    @property (readonly, nonatomic) BOOL supportsAlternateIcons NS_EXTENSION_UNAVAILABLE("Extensions may not have alternate icons") API_AVAILABLE(ios(10.3), tvos(10.2));
    
    // Pass `nil` to use the primary application icon. The completion handler will be invoked asynchronously on an arbitrary background queue; be sure to dispatch back to the main queue before doing any further UI work.
    - (void)setAlternateIconName:(nullable NSString *)alternateIconName completionHandler:(nullable void (^)(NSError *_Nullable error))completionHandler NS_EXTENSION_UNAVAILABLE("Extensions may not have alternate icons") API_AVAILABLE(ios(10.3), tvos(10.2));
    
    // If `nil`, the primary application icon is being used.
    @property (nullable, readonly, nonatomic) NSString *alternateIconName NS_EXTENSION_UNAVAILABLE("Extensions may not have alternate icons") API_AVAILABLE(ios(10.3), tvos(10.2));
    @end

      步骤:

      在 info.plist 文件中新增 Icon files (iOS 5)

      

      其中,Primary Icon 是应用默认图标

      Xcode 中,默认 没有 CFBundleAlternateIcons,需要删掉 Newstand Icon,添加上 CFBundleAlternateIcons。

      

      Primary Icon 可不用设置,使用系统默认的 Assets.xcassets 中的 AppIcon。

      

  • 相关阅读:
    python-常用数据类型
    python入门篇
    Vue 架构
    Bootstrap Web框架
    策略模式
    Java线程安全总结
    JVM中线程状态转换图
    java 多线程并发系列之 生产者消费者模式的两种实现
    JVM 垃圾回收器详解
    MyISAM和InnoDB索引实现对比
  • 原文地址:https://www.cnblogs.com/ZachRobin/p/10289240.html
Copyright © 2011-2022 走看看