1. 程式人生 > >企業App強制更新 與系統彈框導致不能強制更新問題

企業App強制更新 與系統彈框導致不能強制更新問題

前言:原先我們企業app強制更新的流程是在applicationWillEnterForeground該方法中呼叫介面,那麼每次喚醒app都會檢查一遍。然後點選下載會進入我們的自己的下載頁面,奈何奈何呀,這個下載頁面拿的地址一直是上個版本的url。一直有快取,自己加上了時間戳,貌似也不管用。那麼只能拿更新介面的url直接去更新,打算這樣修改。

但是在測試的過程中發現了一個問題,就是在app中去更新下載,系統還會彈出一個對話方塊,問使用者是否更新下載,若是使用者取消的話,意味著使用者依舊可以使用低版本,但是我們是希望使用者使用最新版本,因為不僅客戶端修改了,服務端也修改了相關程式碼,若是一直使用低版本會有意想不到的問題。 在這裡插入圖片描述

像這樣的彈框是系統彈出的,我們又沒法監聽。原來我們是進入一個下載頁面,即使使用者取消安裝,那麼使用者想要使用app,就會立即檢查更新,迫使使用者去下載最新版本。但是直接更新的話就會有這個問題,那麼怎麼解決呢?

我們在自己寫的彈框中,已經獲得了更新的url。然後我們直接去

[[UIApplication sharedApplication ] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@%@",BaseDownloadUrl,url]]]; exit(0);//劃重點!

注意這個exit(0),就是立即退出我們的app,這樣即使使用者點選了取消按鈕,點選app進入,還是會再次檢查更新,這樣使用者使用的就是最新版本的app了。