web-dev-qa-db-fra.com

Différence entre Android-support-v7-appcompat et Android-support-v4

Je voulais connaître la différence entre Android-support-v4.jar et Android-support-v7-appcompat.jar. Si je veux ajouter appcompat Action Bar dans mon application, dois-je ajouter les deux Android-support-v7-appcompat.jar et Android-support-v4.jar ou seulement Android-support-v7-appcompat.jar .

De plus, est-ce que Android-support-v13.jar a appcompat?

144
Tarun

UPDATE

De nombreuses modifications ont été apportées à la bibliothèque de support depuis la réponse à cette question. La bonne chose est, il est très bien documenté aussi. Vous devez donc lire Documentation de la bibliothèque de support pour plus de détails et pour consulter la bibliothèque de support disponible.

Depuis la version 26.0.0 (juillet 2017) de la bibliothèque de support, le niveau minimum d'API prise en charge dans la plupart des bibliothèques de support est passé à Android 4.0 (API de niveau 14) pour la plupart des packages de bibliothèque.


Ci-dessous, la différence entre Support Library Packages :

Bibliothèque de support v4

Cette bibliothèque est conçue pour être utilisée avec Android 1.6 (API niveau 4)Android 2.3 (API niveau 9) Android 4.0 (API niveau 14) et supérieur. Il comprend le plus grand ensemble d’API par rapport aux autres bibliothèques, notamment la prise en charge des composants d’application, les fonctionnalités de l’interface utilisateur, l’accessibilité, la gestion des données, la connectivité réseau et les utilitaires de programmation.

Bibliothèques v7

Il existe plusieurs bibliothèques conçues pour être utilisées avec Android 2.1 (API niveau 7)Android 2.3 (API niveau 9) Android 4.0 (API niveau 14) et supérieur. Ces bibliothèques fournissent des ensembles de fonctionnalités spécifiques et peuvent être incluses dans votre application indépendamment les unes des autres.

v7 bibliothèque appcompat

Cette bibliothèque ajoute la prise en charge du modèle de conception de l'interface utilisateur de la barre d'actions.

Remarque: Cette bibliothèque dépend de la bibliothèque de support v4. Si vous utilisez Ant ou Eclipse, veillez à inclure la bibliothèque de support v4 dans le chemin de classe de cette bibliothèque.

Alors oui, vous avez besoin des deux pots si vous voulez utiliser la v7.


Mise à jour pour Android-support-v13.jar

bibliothèque de support v1

Cette interface est obsolète dans l'API niveau 27.1.0. Utilisez Fragment au lieu du fragment de cadre.

Bibliothèque de support v13

Cette bibliothèque est conçue pour être utilisée avec Android 3.2 (API de niveau 13) et supérieur. Il ajoute la prise en charge du modèle d'interface utilisateur Fragment avec la classe (FragmentCompat) et des classes de prise en charge de fragments supplémentaires.

Quand vous voyez le détails du paquet , il a une classe FragmentCompat comme indiqué dans la définition. Donc, il n'a pas toutes les classes de la bibliothèque appcompat.

168
Pankaj Kumar

Qu'est-ce qu'une bibliothèque de support?

Les bibliothèques de support sont des bibliothèques de code (Collection de classes), ce qui en fait une fonctionnalité nouvellement ajoutée pour fonctionner avec les anciens périphériques.
Par exemple, Material Design a été introduit dans API 21 (Android 5.0 - Lolipop) mais
La bibliothèque de support v7 le rend disponible pour l'API 7 (Android 2.1.x - Eclair) et versions ultérieures.

Quelles sont les différentes bibliothèques de support?

Certaines des principales bibliothèques de support sont

  • Bibliothèque de support V4

  • Bibliothèque de support V7

  • Bibliothèque de support V8

  • bibliothèque de support v13

Que signifie 7 dans la bibliothèque de support v7?

Cela signifie que cette bibliothèque possède des fonctionnalités conçues pour être utilisées avec les API de niveau 7 et supérieur. Il en va de même avec la V4 (contient des fonctionnalités destinées à l’API 4 et supérieure) et ainsi de suite.

Différence entre bibliothèque de support v7 et bibliothèque appcompat v7?

Peu de gens, dont moi, se confondent avec ces deux termes. En fait, la bibliothèque v7 appcompat fait partie de la bibliothèque de support v7. La bibliothèque de support v7 a été principalement développée pour prendre en charge la conception de matériaux et le modèle de conception ActionBar pour API 7 et versions ultérieures.
V7 peut être catégorisé en plusieurs sous catégories

  • bibliothèque v7 appcompat

  • bibliothèque v7 cardView

  • librairie v7 recyclerView
  • bibliothèque v7 pallete etc

la bibliothèque appcompat de la v7 a les classes de clé suivantes: ActionBar, ActionBarActivity, ShareActionProvider.

Donc en ajoutant,

com.Android.support:appcompat-v7:21.0.+

dépendance dans votre fichier gradle, importe les classes susmentionnées.

Prime

Autres bibliothèques de support

Multidex Support Library (Pour créer des applications avec plus de 65 000 méthodes)
v17 Leanback support Library (Une bibliothèque de support fournissant des widgets importants pour Android TV)

Liens pertinents

45
Rohit Singh

La bibliothèque de support n'est requise que si votre version minimale du kit SDK est inférieure à l'API de niveau 11. Sinon, vous n'avez pas besoin d'ajouter de bibliothèque de support à votre projet pour Api niveau 11 ou supérieur.

Android-support-v4.jar: Support Android.app classes permettant de développer des applications pour Android API de niveau 4 ou supérieur. Afin que vous puissiez rendre votre application mot-clé compatible,

Android-support-v7.jar Il a été ajouté récemment à la dernière mise à jour de la bibliothèque de support. ActionBar pour permettre la mise en oeuvre du modèle de conception d'interface utilisateur de la barre d'action sur Android 2.1 (API de niveau 7) et supérieur. L'utilisation de cette classe nécessite que vous implémentiez votre activité en étendant la nouvelle classe ActionBarActivity.

Si je veux ajouter la barre d'action appcompat dans mon application, dois-je ajouter à la fois Android-support-v7-appcompat.jar et Android-support-v4.jar ou seulement Android-support-v7-appcompat.jar.

Oui, vous devez ajouter une référence aux deux bibliothèques si vous souhaitez l’utiliser.

est-ce qu'Android-support-v13.jar a appcompat?

Non, il inclut FragmentCompat afin que, si une partie de la fonctionnalité Fragment soit ajoutée après la version 13, vous puissiez la rendre compatible avec le mot de passe Api niveau 11. afin que l'API de ciblage d'applications 11 ou supérieure puisse utiliser la fonctionnalité sur les nouvelles versions.

44
Bhavesh Patadiya

Premièrement, nous devons comprendre, Qu'est-ce que la Android Bibliothèque de support?

La _ Android Support Library a été initialement publiée en 2011. Vous pouvez dire que, en tant que Android Bibliothèque de compatibilité.the Android Support Library fournit des API plus récentes pour les versions antérieures. l'histoire ne suffit pas.

Cela peut être un peu déroutant que les bibliothèques de support avec des numéros de version supérieurs incluent les fonctionnalités des bibliothèques précédentes (vous pouvez penser que v7-appcompat améliore et inclut toutes les fonctionnalités de v4). Dans la plupart des cas, cela est incorrect. Cependant, les bibliothèques elles-mêmes ont un numéro de révision. Par exemple, “AppCompat v21” fait en réalité référence à la bibliothèque de support v7-appcompat, révision 21.

La bibliothèque de support Android n'est pas une bibliothèque unique, mais elle peut être divisée en deux groupes: les bibliothèques de compatibilité et de composants.

Les bibliothèques 1-Compatibility se concentrent sur les fonctionnalités de rapportage à partir de versions plus récentes de la structure afin que les périphériques exécutant des versions précédentes puissent tirer parti des API les plus récentes. Les principales bibliothèques de compatibilité sont v4 et v7-appcompat.

Bibliothèque v4 : Elle comprend de nombreuses fonctionnalités et, comme son nom l’indique, prend en charge le retour à l’API 4. En outre, pour prendre en charge les implémentations de classes majeures telles que Fragment et Loader (qui ont tous deux été introduits dans la structure dans API 11), vous trouverez également plusieurs classes largement utilisées qui ne sont pas présentes dans la structure, telles que ViewPager et DrawerLayout.

v7-appcompat : la bibliothèque v7-appcompat fournit des implémentations de support pour ActionBar (introduit dans l'API 11) et la barre d'outils (introduite dans l'API 21) pour les versions API 7. Elle nécessite la bibliothèque v4 mais ne l’inclut pas. Ainsi, toute fonctionnalité dépendant de v7-appcompat dépend également de v4.

Bibliothèques à 2 composants la _ Bibliothèque de support de Android fournit également des bibliothèques de composants plus petites et plus modulaires qui permettent aux développeurs d'ajouter des fonctionnalités qui ne sont pas disponibles autrement. fait partie du cadre standard. Ces bibliothèques autonomes peuvent être facilement ajoutées ou supprimées d'un projet sans se soucier des dépendances. Il existe plusieurs bibliothèques de composants utiles à prendre en compte:

v7-recyclerview : fournit le composant RecyclerView, qui affiche et anime efficacement de grandes quantités de données et est conçu pour remplacer ListView.

v7-cardview : fournit le composant CardView permettant l'activation du modèle de conception de l'interface utilisateur des cartes.

v7-gridlayout : fournit la classe GridLayout, qui permet d'organiser les éléments de l'interface utilisateur dans une grille rectangulaire. Etc..

Autres bibliothèques La bibliothèque de support de Android contient également quelques autres bibliothèques moins utilisées, mais qu'il convient de mentionner:

v8: prend en charge RenderScript (introduit dans l'API 11) depuis l'API 8.

v13 : fournit un support de compatibilité supplémentaire pour le modèle d'interface utilisateur Fragment et regroupe la bibliothèque v4

v17 : prend en charge la création d'interfaces utilisateur pour la télévision.

Quand dois-je utiliser la bibliothèque de support Android?

Vous devez utiliser l'une des bibliothèques de support lorsque vous avez besoin de fonctionnalités de structure spécifiques, plus récentes que minSdkVersion de votre application ou non disponibles dans la structure standard.

et je renvoie ce tutoriel

10
Farhana

Cette réponse est pertinente pour les clients des bibliothèques de support dont la version est> = 26.0.0:

Attention : à partir de la version 26.0.0 (juillet 2017) de la bibliothèque de support, le niveau minimum d'API pris en charge dans la plupart des bibliothèques de support est passé à Android 4.0 (API niveau 14) pour la plupart des packages de bibliothèque.

Par exemple, les packages support-v4 et support-v7 prennent en charge un niveau d’API minimal de 14, pour les versions de la bibliothèque de support à partir de 26.0.0 et les versions ultérieures .

Pour plus d'informations, voir Bibliothèque de support - Support de version et noms de package .

5
Eido95