iOS 如何第一次打開App 時展示軟件新特性

  • 首先需要獲得當前軟件的版本號,通過和'舊'版本號比對判斷出 app 是否第一次打開,是否需要展示當前軟件的新特性引導頁面.

  • 版本號在主資源包的 Info.plist 文件中.

Info.plist
  • 但是在 info.plist 中存儲的鍵值不是真實的,所以我們通過查看 Source Code 的方式獲得版本號的真實鍵值
Source Code
  • 我們在第一次打開軟件時,將當前版本存入用戶偏好設置.

  • 下次打開的時候,拿出上次手動存儲的版本號與軟件版本號進行比對.就可以判斷出當前軟件是否第一次打開.

  • 實現代碼如下


@implementation XBVersion

+ (instancetype)chooseRootViewController{

    // 取出當前軟件版本號
    NSString *curVersion = [NSBundle mainBundle].infoDictionary[@"CFBundleShortVersionString"];
    NSLog(@"Current Version -- %@",curVersion);

    // 取出上次手動存儲的版本號
    NSString *oldVersion = [[NSUserDefaults standardUserDefaults] objectForKey:@"VersionKey"];
    NSLog(@"Old Version -- %@",oldVersion);

    // 比對當前軟件是否第一次打開
    if ([curVersion isEqual:oldVersion]){
        NSLog(@"沒有新特性");
    } else {
        NSLog(@"有新特性");
        // 手動將當前版本存入偏好設置
        [[NSUserDefaults standardUserDefaults] setValue:curVersion forKey:@"VersionKey"];
    }

    return nil;
}

@end

代碼運行效果如下

第一次打開時
  • 由于第一次打開, Old Version 的內容我們還沒有手動添加,明顯可以看到當前軟件是第一次打開.
下次在打開時
  • 成功讀取版本信息,可以有效的避免新特性被重復多次的展示.
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現,斷路器,智...
    卡卡羅2017閱讀 136,563評論 19 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,040評論 25 709
  • 7月21日是我們在省委黨校學習培訓的第五天,徐州分行的小伙伴們依舊朝氣蓬勃,每節(jié)課都熱情飽滿,尤其是今天下...
    皮毛250閱讀 352評論 0 0
  • 首先從官網上下載內核源碼。 kernel download這里我們下載tar.xz的壓縮包。 XZ壓縮最新壓縮率之...
    AweS77閱讀 629評論 0 1
  • 惟愿把過去都丟棄 單單對那些不美的事失去記憶 可現實總與我美好的心靈大相徑庭 新的一天產生了 你該怎么管理他 是任...
    青果未熟閱讀 172評論 0 2

友情鏈接更多精彩內容