文章出處

昨天添加Android兼容包,碰到了很多問題,在這里記錄一下,讓后面的路好走。

如何選擇兼容包,

請參考Android Support Library Features(二)

一、下載Support Library

方法1:右擊項目→選擇Android Tools→Add Support Library…

image

方法2:

通過SDK Manager獲取Support Library:

1.打開Android SDK Manager

2.在SDK Manager窗口,滾動到Package List的末尾,找到Extra文件夾,如果需要的話打開文件夾顯示它的內容。

3.選擇Android Support Library項目。

注意:如果你使用的是Android Studio開發,選擇并安裝Android Support Repository項目而不是Android Support Library項目。

4.點擊Install packages按鈕。

下載完成后,SDK會將Support Library文件安裝到你已經存在的Android SDK目錄下。庫文件位于SDK的如下子目錄:<sdk>/extras/android/support/目錄。

 

二、添加V4兼容包(v4 appconpat)

  1. 確保你已經利用SDK Manager下載了Android Support Library 。
  2. 在你的項目的根目錄下創建一個libs/目錄。
  3. 從你的Android SDK安裝目錄(例如,<sdk>/extras/android/support/v4/android-support-v4.jar)下拷貝JAR文件到你項目的libs/目錄下。
  4. 右鍵點擊JAR文件并選擇Build Path > Add to Build Path。

三、添加V7兼容包(v7 appconpat)

創建一個基于support library代碼的 library project

  1. 確保你已經利用 SDK Manager下載了Android Support Library
  2. 創建一個library項目并且確保需要的JAR文件包含在了項目的build path中:
    1. 選擇File > Import
    2. 選擇Existing Android Code Into Workspace 并點擊Next
    3. 瀏覽SDK安裝目錄,并進入Support Library目錄下。例如,如果你要添加appcompat項目,瀏覽 <sdk>/extras/android/support/v7/appcompat/。
    4. 點擊Finish引入項目。對于v7 appcompat項目,你將看到一個標題為android-support-v7-appcompat的新項目。
  • image
    1. 在新項目中,展開libs/ 文件夾,右鍵點擊每一個.jar文件,并選擇Build Path > Add to Build Path。例如,當創建v7 appcompat項目時,同時將android-support-v4.jar和android-support-v7-appcompat.jar文件添加到build path中。
    2. 右鍵點擊library項目文件夾并選擇Build Path > Configure Build Path
    3. 在Order and Export選項中,在剛剛添加到build path中的.jar文件上打勾,這時這些文件成為項目可用的了并依賴于這個library項目。例如,appcompat項目要求同時導出android-support-v4.jar和android-support-v7-appcompat.jar文件。
    4. 去掉Android Dependencies上的對勾。
    5. 點擊OK完成設置

    image

     

     

    現在你擁有了一個包含你選擇的Support Library的library項目,你可以在一個或多個應用項目中利用這個Support Library。

     

    現在我們要向應用工程(需要加入Support Library的工程)添加庫:

    1. 在項目瀏覽器中右鍵單擊你的項目,選擇Properties
    2. 在左邊的分類面板中,選擇Android
    3. 在Library面板中,點擊Add
    4. 選擇庫項目,然后點擊OK。例如,appcompat項目會在列表中顯示為android-support-v7-appcompat
    5. 在properties窗口中,點擊OK

    image

     

    遇到的問題:

    1、java.lang.NoClassDefFoundError: android.support.v7.appcompat.R$attr

    這個問題,是因為app在運行時沒有找到對應的V7兼容包導致的,請參考文中  添加V7兼容包(v7 appconpat)

    2、java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.

    完成上文提到的1,3步驟后,修改android:theme為@style/Theme.AppCompat

    image

     

     

    參考鏈接

    Android Support Library(一)

    Android Support Library Features(二)

    Android Support Library Setup(三)

    Support Library


    文章列表


    不含病毒。www.avast.com
    arrow
    arrow
      全站熱搜
      創作者介紹
      創作者 大師兄 的頭像
      大師兄

      IT工程師數位筆記本

      大師兄 發表在 痞客邦 留言(0) 人氣()