iOS開發(fā)當版本迭代時需要提示用戶更新彬坏,以前基本都是走后臺接口監(jiān)測version字段更新,今天看到了蘋果的API接口血当,于是寫了一個小demo,實現(xiàn)一句代碼達到提示用戶更新的目的落恼,后期又加入了自定義接口离熏,支持自定義彈出窗口,接下來主要看一下滋戳,代碼里邊已經(jīng)注釋的很清楚。
只需要調(diào)用如下方法:
/**
*? 檢測新版本(使用系統(tǒng)默認提示框)
*
*? appID:應(yīng)用在Store里面的ID (應(yīng)用的AppStore地址里面可獲取)
*? containCtrl: 提示框顯示在哪個控制器上
*/
+(void)checkNewEditionWithAppID:(NSString *)appID ctrl:(UIViewController *)containCtrl;
/**
*? 檢測新版本(使用自定義提示框)
*
*? @param appID應(yīng)用在Store里面的ID (應(yīng)用的AppStore地址里面可獲取)
*? @param checkVersionBlock AppStore上版本信息回調(diào)block
*/
+(void)checkNewEditionWithAppID:(NSString *)appID CustomAlert:(checkVersionBlock)checkVersionBlock;
看一下checkVersionManager獲取app版本號的方法
- (void)getAppStoreVersion:(NSString *)appID sucess:(void(^)(AppleStoreModel *))update;
AppleStoreModel是我們定義的版本號類矢棚,其中一些字段如果不需要可以省略府喳,下面是我需要得到的幾個版本屬性蘑拯;
/**
*? 版本號
*/
@property(nonatomic,copy) NSString * version;
/**
*? 更新日志
*/
@property(nonatomic,copy)NSString *releaseNotes;
/**
*? 更新時間
*/
@property(nonatomic,copy)NSString *currentVersionReleaseDate;
/**
*? AppStore地址
*/
@property(nonatomic,copy)NSString *trackViewUrl;
將得到的version與本地plist文件version對比申窘,判斷是否提示更新弯蚜。
#pragma mark - 忽略新版本
- (void)ignoreNewVersion:(NSString *)version;
#pragma mark - 立即升級
- (void)updateRightNow:(AppleStoreModel *)model碎捺;
項目源碼:github下載地址