Android SDK 5.0 帶來的這番折騰 - 生命在于折騰!
太陽火神的美美http://www.jyygyx.com/cxrs/ (http://blog.csdn.net/opengl_es)
本文遵守“署名-非商業(yè)用處-保持1致”創(chuàng)作公用協(xié)議
轉(zhuǎn)載請(qǐng)保存此句:太陽火神的美美http://www.jyygyx.com/cxrs/ - 本博客專注于 敏捷開發(fā)及移動(dòng)和物聯(lián)裝備研究:iOS、Android、Html5、Arduino、pcDuino,否則,出自本博客的文章謝絕轉(zhuǎn)載或再轉(zhuǎn)載,謝謝合作。
1、首先需要明確1個(gè)問題 ,Android 的 SDK,包括以下幾個(gè)主要部份:
a、tools
這是 Android 工具,emulator 等工具都在這里
b、platform-tools
這是平臺(tái)工具,著名的 adb 就在這里
c、build-tools
這是構(gòu)建工具,做過批量編譯的開發(fā)者,可能都用過這些打包命令,比如 aapt、dx 等;
這個(gè)目錄下會(huì)存在多個(gè)平臺(tái)專用的構(gòu)建工具版本,均在1個(gè)代表該平臺(tái)版本的目錄下,如 19.1.0:
d、platforms
這是各級(jí) API 對(duì)應(yīng)平臺(tái)版本開發(fā)庫所在,以下圖所示,也是以該平臺(tái) API 版本為標(biāo)識(shí)的目錄分別進(jìn)行組織的
從上圖中,可以看到,每次 Android 新版本的發(fā)布,都會(huì)帶來 Android 工具、平臺(tái)工具、構(gòu)建工具部份或所有的更新,而平臺(tái) SDK 1定會(huì)發(fā)布1個(gè)新的版本
e、extras
附加組件部份,其中比較重要的是 “支持庫”,它可以確保1些新版本 SDK 中引入的功能,可以運(yùn)行在不具有這些功能的較早版本的裝備上
2、現(xiàn)在新建1個(gè) Android 利用,如果利用向下兼容的版本較低,而使用了1些這些低版本中不具有的功能,就會(huì)自動(dòng)創(chuàng)建1個(gè)類似 appcompat_v7 這樣的工程:
扎騰進(jìn)程中問題解決進(jìn)程整理:
1、 實(shí)際使用時(shí),發(fā)現(xiàn),直接將 android-support-v7-appcompat.jar 拷貝到自已所建的工程目錄下 libs 目錄中,并添加到構(gòu)建路徑里(默許 libs 下的 jar 會(huì)自動(dòng)添加到構(gòu)建路徑中,有時(shí)也會(huì)出現(xiàn)不自動(dòng)添加的情況,此時(shí)只需手動(dòng)添加便可),尚不清楚需要?jiǎng)?chuàng)建此工程的真正目的
2、另外,需要確保援用該庫工程的其它工程中引入的支持庫的版本相1致,不1致會(huì)在 console 中出現(xiàn)提示,找到兩個(gè)不同版本的支持庫
3、構(gòu)建工具、平臺(tái)SDK 需要版本對(duì)應(yīng),另外 ADT 也應(yīng)當(dāng)使用對(duì)應(yīng)版本,以便它們之間很好地協(xié)作,最少目前發(fā)現(xiàn) 5.0 的支持庫與 4.4.2 的工程會(huì)出現(xiàn)找不到各類資源問題
總結(jié):要末升級(jí),就全部升到最新版本,要末就不要升級(jí),避勉交叉使用,這類交叉情況是谷歌開發(fā)人員未能測(cè)試得到的地方,很容易出問題。
升級(jí)之前,先備份原版本,這個(gè)很重要,否則你想降回來用,就會(huì)出現(xiàn)莫名的問題。
總而言之,輕易不要升級(jí),升級(jí)1定要備份初期版本,最好是全部~!
以以下出各種扎騰所需要更改和適配的地方,包括 SDK版本、援用工程庫的重新引入、構(gòu)建路徑、jdk 編譯器版本、fix android properties、支持庫的版本與 SDK版本的1致性和主工程與援用工程之間 SDK 版本及支持庫版本的1致性檢查確認(rèn)。
后續(xù)補(bǔ)充圖解。