Search code examples
androidandroid-support-libraryandroid-4.0-ice-cream-sandwichandroid-actionbar-compatandroid-compatibility

Difference between android-support-v7-appcompat and android-support-v4


I wanted to know the difference between android-support-v4.jar and android-support-v7-appcompat.jar. If I want to add appcompat Action Bar in my application do I need to add both android-support-v7-appcompat.jar and android-support-v4.jar or only android-support-v7-appcompat.jar.

Also, does android-support-v13.jar has appcompat?


Solution

  • UPDATE

    There are many changes done into support library since this question was answered. Good thing is, it is very well documented also. So you must read Support Library Documentation for more details and more available support library.

    Starting with Support Library release 26.0.0 (July 2017), the minimum supported API level across most support libraries has increased to Android 4.0 (API level 14) for most library packages.


    Below is difference from Support Library Packages:

    v4 Support Library

    This library is designed to be used with Android 1.6 (API level 4) Android 2.3 (API level 9) Android 4.0 (API level 14) and higher. It includes the largest set of APIs compared to the other libraries, including support for application components, user interface features, accessibility, data handling, network connectivity, and programming utilities.

    v7 Libraries

    There are several libraries designed to be used with Android 2.1 (API level 7) Android 2.3 (API level 9) Android 4.0 (API level 14) and higher. These libraries provide specific feature sets and can be included in your application independently from each other.

    v7 appcompat library

    This library adds support for the Action Bar user interface design pattern.

    Note: This library depends on the v4 Support Library. If you are using Ant or Eclipse, make sure you include the v4 Support Library as part of this library's classpath.

    So yes you need both jars if you want to use v7.


    Update for android-support-v13.jar

    v13 Support Library

    This interface was deprecated in API level 27.1.0. Use Fragment instead of the framework Fragment.

    v13 Support Library

    This library is designed to be used for Android 3.2 (API level 13) and higher. It adds support for the Fragment user interface pattern with the (FragmentCompat) class and additional fragment support classes

    When you see the package details it has a class FragmentCompat as given in definition. So it has not the all classes of appcompat library.