如何安全地將你的Android應(yīng)用程序更新到Nougat

Android Nougat是谷歌移動(dòng)操作系統(tǒng)的最新版本,已經(jīng)開(kāi)始在Nexus設(shè)備上推出。基于Android的歷史和最新的Apteligent數(shù)據(jù)報(bào)告,雖然這對(duì)于Nexus機(jī)主來(lái)說(shuō)是激動(dòng)人心的,但讓Nougat在其他設(shè)備上同樣適用還需要一段時(shí)間。
這背后的原因很簡(jiǎn)單:制造商想要確保他們的設(shè)備和定制軟件兼容Android的最新版本。作為一名開(kāi)發(fā)人員,你應(yīng)該對(duì)你的應(yīng)用程序做同樣的事!相信我,沒(méi)有什么比推出一個(gè)新版本卻看到它在舊的操作系統(tǒng)上如同廢物更令人沮喪的。
所以在你急于添加Nougat的所有新特性,像多窗口界面和交互通知之前,一定要安全地升級(jí)你的應(yīng)用,確保用戶在每個(gè)操作系統(tǒng)版本上的平穩(wěn)過(guò)渡。
SDK升級(jí)
為了利用在Android N上的新API,你需要做的第一件事是更新你的應(yīng)用程序的設(shè)置以適應(yīng)新的SDK。假設(shè)一切都已經(jīng)下載到你的系統(tǒng),設(shè)置項(xiàng)目的compileSdkVersion 到 24。這告訴編譯器構(gòu)建最新最棒的功能,并將讓你的代碼調(diào)用新的API。
注意,這與targetSdkVersion截然不同,如果你利用新的操作系統(tǒng)特性,你也應(yīng)該更新到24。這個(gè)設(shè)置是一種指示,表明應(yīng)用程序已經(jīng)準(zhǔn)備好和測(cè)試了新版本。
配置好應(yīng)用程序之后,你就可以開(kāi)始構(gòu)建新的API。
檢查API可用性
即使你的應(yīng)用將編譯最新的API,這并不意味著你的代碼將在現(xiàn)有的操作系統(tǒng)版本上完美地工作。確保你的應(yīng)用仍然可以在pre-N系統(tǒng)上運(yùn)作的最好辦法是做運(yùn)行時(shí)API檢查。這樣可以確保你想要的類(lèi)或方法利用存在應(yīng)用程序正在運(yùn)行的設(shè)備上。如果你想從現(xiàn)有的操作系統(tǒng)調(diào)用一個(gè)N方法,應(yīng)用程序會(huì)崩潰。
這個(gè)簡(jiǎn)單的代碼塊可以確定運(yùn)行在你的應(yīng)用程序上的設(shè)備是否支持N(或更新),允許你添加新功能而不必等待整個(gè)用戶群升級(jí)。
if (Build.VERSION.SDK_INT>=Build.VERSION_CODES.N) { // Call an N API } else { // Fail gracefully on an older OS }
處理廢棄API
如果你是喜歡瀏覽更新日志的一類(lèi)人,Android的N報(bào)告會(huì)給你治療。它包含所有API 23和API 24(Nougat)之間的每個(gè)變化的細(xì)節(jié)。這包括添加、修改和刪除包、類(lèi)和SDK字段。
有些修改棄用意味著代碼不再支持,最終可能會(huì)被刪除。當(dāng)一個(gè)方法或類(lèi)棄用,你會(huì)得到一個(gè)編譯器的警告讓你知道哪些代碼受到影響,這樣你就可以做出任何必要的改變。雖然這通常是一個(gè)漫長(zhǎng)的過(guò)程,API已不復(fù)存在,你的代碼將開(kāi)始破壞的時(shí)候,這一天可能會(huì)到來(lái)。
當(dāng)更新棄用代碼時(shí),一定要遵循你添加一個(gè)新特性時(shí)相同的檢查。如果你寫(xiě)的新代碼依賴(lài)于API 24或更高版本,你將需要執(zhí)行運(yùn)行時(shí)版本檢查,以確保你的應(yīng)用對(duì)舊版本的操作系統(tǒng)如預(yù)期般執(zhí)行。
測(cè)試所有支持的Android版本
在一天結(jié)束的時(shí)候,它將由適當(dāng)?shù)臏y(cè)試來(lái)驗(yàn)證,你的應(yīng)用程序是在你支持的所有的設(shè)備和操作系統(tǒng)上工作。不要掉進(jìn)“它能在我的設(shè)備上運(yùn)行,所以它是沒(méi)問(wèn)題的”的陷阱中。不幸的是,即使是最好的測(cè)試不能抓住一切,這就是Apteligent出現(xiàn)的原因。我們的SDK允許您監(jiān)視應(yīng)用程序崩潰和性能問(wèn)題,快速追蹤測(cè)試忽略的錯(cuò)誤。
完成
我強(qiáng)烈建議搶先安裝Nougat SDK,這樣你的應(yīng)用程序就可以利用Android提供的最新的特性。只要確保你沒(méi)有忽視其余部分用戶群使用的應(yīng)用程序的穩(wěn)定性和性能。只需要一個(gè)失敗的發(fā)布就可能減少你辛辛苦苦賺來(lái)的五星評(píng)級(jí),所以請(qǐng)徹底的測(cè)試、測(cè)試、測(cè)試。
遵循這些方法,你的程序?qū)㈦S著Nougat繼續(xù)推出將所有設(shè)置完成。
本文翻譯自: