178 votes

Différence entre Android.app.Fragment et Android.support.v4.app.Fragment

Quelle est la différence entre android.app.Fragment y android.support.v4.app.Fragment et quelles sont les circonstances dans lesquelles chacune doit être utilisée ?

292voto

Raghav Sood Points 43264

android.support.v4.app.Fragment es el Fragment dans la bibliothèque de support Android, qui est un paquet de compatibilité permettant d'utiliser certaines des nouvelles fonctionnalités d'Android sur les anciennes versions d'Android.

android.app.Fragment es el Fragment dans la version native du SDK Android. Elle a été introduite dans Android 3 (API 11).

Si vous voulez que votre application utilise des fragments et que vous souhaitez cibler les appareils avant l'API 11, vous devez utiliser la fonction android.support.v4.app.Fragment . Toutefois, si vous ne ciblez que les appareils fonctionnant avec l'API 11 ou plus, vous pouvez utiliser la fonction android.app.Fragment .

Edit : le système d'exploitation contenu android.app.Fragment est maintenant déprécié (à partir du niveau 28 de l'API), et tout le monde devrait passer à l'utilisation des implémentations de la bibliothèque de support.

57voto

Artyom Points 895

A partir de 2018 :

De android.app.Fragment documentation :

Cette classe a été supprimée au niveau 28 de l'API.
Utiliser la bibliothèque de soutien Fragment pour un comportement cohérent sur tous les appareils et un accès à Lifecycle.

Ainsi, les fragments de support ( android.support.v4.app.Fragment ) devrait être utilisé partout à la place des fragments natifs ( android.app.Fragment ) maintenant.

12voto

alex Points 2756

J'utilise android.support.v4.app.Fragment exclusivement.

Toutes les applications que j'écris doivent être compatibles avec Android 2.3 et c'est le moyen le plus simple de le faire.

Si vous soutenez le 11+, alors tenez-vous-en à android.app.Fragment .

4voto

Ahmad Payan Points 958

Si votre application est destinée à l'API 11 ou supérieure, vous pouvez utiliser android.app.Fragment et votre fichier APK sera plus petit.

Sinon, ajoutez le android.support.v4.app.Fragment à votre projet afin de prendre en charge les anciennes versions de l'API Android (Android 3.x).

2voto

MonkeyDroid Points 607

android.support.v4.app.Fragment est une bibliothèque que vous pouvez utiliser pour obtenir une compatibilité rétroactive pour les anciennes versions de l'API.

Les fragments ont été ajoutés au niveau 11 de l'API (avec d'autres fonctionnalités). Vous devez inclure cette bibliothèque pour étendre ces fonctions aux périphériques pré-API 11. C'est une bibliothèque utile et je vous suggère de jeter un coup d'œil à ActionBarSherlock, qui étend la barre d'action aux périphériques pré-API v11.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X