• 在Eclipse添加Android兼容包( v4、v7 appcompat )[转]


    昨天添加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

  • 相关阅读:
    Codeforces Round #601 (Div. 2)
    A. A Serial Killer
    B. Sherlock and his girlfriend
    Codeforces Round #600 (Div. 2)
    Manthan, Codefest 19 (open for everyone, rated, Div. 1 + Div. 2) C. Magic Grid
    7213:垃圾炸弹
    2011
    Educational Codeforces Round 46 (Rated for Div. 2)
    Stall Reservations
    Pots
  • 原文地址:https://www.cnblogs.com/vijozsoft/p/3943950.html
Copyright © 2020-2023  润新知