Android Support v4、v7、v13的區別以及應用場景
一、簡介
在 Android 開發中,為了使用高版本API的新特性,需要新增額外的包來使用這些新特性,這就是 Android Support 包
二、分類
- Android Support v4: 這個包是為了照顧Android 1.6及以上版本而設計的,在開發中,預設都會使用到這個包
- Android Support v7: 這個包是為了照顧Android 2.1及以上版本而設計的,但是不能相容低版本 Android 系統,如果開發中不考慮 1.6 ,可以採用這個包。另外要注意的是,v7 包是依賴 v4 包的,即引入 v7 包的話要同時引入 v4 包
- Android Support v13: 這個包是為了照顧Android 3.2及以上版本而設計的,一般開發中不會用到,平板開發可能會用到
三、額外問題
1、檢視V4包的原始碼
在大部分開發中,開發工具會自動將 v4.jar 引入到專案中,但是無法檢視 v4.jar 的原始碼
解決方案:
將SDK中的 /extras/android/support/v4
目錄下的jar包新增到工程中,引入原始碼。
2、eclipse 開發中自動生成 appcompat_v7 庫專案報錯
在上面有說到 v7 包是為了照顧Android 2.1及以上版本,使其可以使用高API的新特性
假設在 eclipse 中建立專案時最低 sdk(Minimum Required Sdk)選擇了 api14
以下,而編譯版本(Compile Sdk)又選擇了高於 api14
的版本,此時為了能使用新特性,eclipse會自動建立 appcompat_v7 庫專案,並將其引用到專案中
很多初學者在此時很容易出現錯誤,eclipse 找不到資源,原因是因為目標sdk(Target Sdk)低於 sdk 環境中的最高版本(即你自己下載的sdk的最高的版本)
解決方案:
方案一:將目標sdk(Target Sdk)設為已下載的最高版本,此時依舊會自動建立 appcompat_v7 庫專案,並將其引用到專案中,但是不會再報錯了
方案二:將最低 sdk(Minimum Required Sdk)設為高於
api14
的版本。這時, eclipse 不會建立 appcompat_v7 庫專案,因為api14
以上的android版本不需要依賴該庫專案來使用新特性。
相關文章
- Android Support v4、v7、v13 介紹Android
- android之support-v4、v7、v13的區別Android
- go的 & 和 * 的區別,以及應用場景Go
- MyISAM和InnoDB的主要區別和應用場景
- 如何理解UDP 和 TCP? 區別? 應用場景?UDPTCP
- call apply bind的作用及區別? 應用場景?APP
- Redis詳解以及Redis的應用場景Redis
- 關於Ajax和websocket的區別以及使用場景!Web
- 1.CSS和iStack的區別和應用場景CSS
- Nginx的HTTP模組與Stream模組:區別與應用場景NginxHTTP
- 談談redis,memcache的區別和具體應用場景Redis
- Socket 與 Http區別 優缺點及應用場景HTTP
- 區塊鏈應用場景解析區塊鏈
- 關於Redis資料型別以及應用場景的分析與總結Redis資料型別
- Spark Streaming 的原理以及應用場景介紹Spark
- 閉鎖和柵欄的區分以及適用場景
- android 啟動模式應用場景Android模式
- 區塊鏈應用場景有哪些?區塊鏈
- 徹底弄清楚session,cookie,WebStorage的區別及應用場景SessionCookieWeb
- 區塊鏈+股權交易的應用場景區塊鏈
- Node.js 優缺點以及應用場景Node.js
- RabbitMQ的應用場景以及基本原理介紹MQ
- RabbitMQ 的應用場景以及基本原理介紹MQ
- git 忽略檔案的幾種方式以及應用場景Git
- String資料型別的應用場景資料型別
- sorted set 資料型別的應用場景資料型別
- 【基礎梳理】cookie、session、sessionStorage、localStorage之間的區別及應用場景CookieSession
- 區塊鏈應用場景有哪些?區塊鏈應用開發區塊鏈
- FRAM的應用場景
- Numpy的應用場景
- redis的應用場景Redis
- Vuex 的應用場景Vue
- 區塊鏈知識系列 - DAG的應用場景區塊鏈
- redis資料型別及應用場景Redis資料型別
- Redis 資料型別及應用場景Redis資料型別
- 【實操】小程式的應用場景分析——線下場景應用
- list與Set、Map區別及適用場景
- TypeScript 中列舉型別的理解?應用場景?TypeScript型別