Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Ricardo Torrão

12 novembre 2021

Min Read

Camera Manager, une vue de caméra personnalisée simple et rapide

Camera Manager est une classe Swift simple qui fournit toutes les configurations dont vous avez besoin pour créer une vue de caméra personnalisée pour les applications iOS. Découvrez comment nous l'avons fait et essayez-le en utilisant le lien à la fin de cet article.

blue arrow to the left
Imaginary Cloud logo

UIImagePickerController et AVCaptureSession

Lorsqu'il s'agit de créer une application pour prendre des photos et capturer des vidéos sur iOS, Apple propose deux approches différentes : Contrôleur UIImagePickerController et Session AVCapture.

Contrôleur UIImagePickerController est le moyen le plus simple d'être opérationnel, car vous pouvez disposer d'une solution fonctionnelle en quelques lignes de code. Cependant, cette simplicité a un coût : la personnalisation de l'interface utilisateur ou l'ajout de fonctionnalités à l'appareil photo (par exemple, toucher pour faire la mise au point) présentent des difficultés.

D'autre part, Session AVCapture, qui fait partie du Framework AVFoundation, permet une plus grande flexibilité de personnalisation, mais il est plus difficile à configurer et à gérer. Sa complexité et les maux de tête connus liés à son utilisation peuvent décourager certains développeurs.

Nous avons construit Gestionnaire de caméras pour créer des vues de caméra personnalisées en utilisant les meilleures qualités de ces outils : une meilleure interaction avec AVCaptureSession et la flexibilité d'AVFoundation tout en cachant tous les détails au développeur.

Avec Camera Manager, le développeur peut créez de superbes interfaces utilisateur personnalisées et obtenez des résultats impressionnants avec photos, sans réinventer la roue.

blue arrow to the left
Imaginary Cloud logo

Interface Camera Manager

Camera Manager Interface

Gestionnaire de caméras fournit une vue de caméra iOS simple et personnalisée pour capturer des photos et enregistrer des vidéos facilement, avec les fonctionnalités suivantes :

  • sélection de la caméra avant/arrière ;
  • touchez pour faire la mise au point ;
  • pincez pour zoomer ;
  • curseur d'exposition ;
  • mode flash ;
  • sortie de qualité de la caméra ;

  • mode de mise au point ;
  • mode d'exposition ;
  • retourner l'image de la caméra avant ;
  • noms d'albums personnalisés pour l'image et la vidéo ;


  • métadonnées EXIF ;

  • enregistrer l'emplacement dans EXIF.

Pour fournir toutes ces fonctionnalités, Gestionnaire de caméras les usages Session AVCapture, qui selon Apple est : »un objet qui gère l'activité de capture et coordonne le flux de données depuis les périphériques d'entrée à capturer.«

AV Capture Session Flow

Au lieu de créer manuellement une session de capture, d'obtenir et de configurer les périphériques de capture nécessaires, de créer des entrées à l'aide des périphériques de capture et de configurer un objet de sortie vidéo/photo pour traiter les vidéos/images capturées, le développeur n'a qu'à ajouter la couche d'aperçu à la vue souhaitée.


Toutes les modifications apportées à Appareil de capture AV, tels que le réglage du mode flash et la commutation entre les appareils photo avant et arrière, sont effectués et configurés en toute sécurité par Gestionnaire de caméras.

Et puis lors de la capture d'une image :


De même, pour démarrer et arrêter l'enregistrement d'une vidéo :


Comme cela a été démontré, Gestionnaire de caméras offre la flexibilité d'AVCaptureSession tout en conservant la simplicité de UIImagePickerViewController.

Camera Manager Test Photo

Certaines alternatives sont disponibles, mais Gestionnaire de caméras possède quelques points forts qui en font un choix exceptionnel :

  • Il est écrit en Swift : la plupart des alternatives les plus utilisées sont écrites en Objective-C. Étant donné que presque toutes les nouvelles applications sont écrites en Swift et qu'Apple s'engage à utiliser ce langage, il est logique d'utiliser Swift pour garantir que l'application sera bien plus pérenne.

  • Il est hautement configurable : Gestionnaire de caméras donne au développeur le contrôle total des fonctionnalités nécessaires pour créer de superbes applications pour appareils photo.

  • Concentrez-vous sur les fonctionnalités, pas sur l'interface utilisateur : certaines bibliothèques sont livrées avec leur propre interface utilisateur. Camera Manager se concentre sur les fonctionnalités et donne au développeur le contrôle total pour implémenter l'interface utilisateur à sa guise.
blue arrow to the left
Imaginary Cloud logo

Télécharger Camera Manager

Nous vous encourageons à l'essayer. Gestionnaire de caméras propose un exemple d'application que vous pouvez exécuter sur votre appareil. Vous aurez besoin d'un appareil réel pour l'exécuter, en raison de l'utilisation des API de caméra AVFoundation qui ne sont pas disponibles sur le simulateur iOS.

Ready for a UX Audit? Book a free call

Vous avez trouvé cet article utile ? Ceux-ci vous plairont peut-être aussi !

blue arrow to the left
Imaginary Cloud logo
blue arrow to the left
Imaginary Cloud logo
blue arrow to the left
Imaginary Cloud logo
blue arrow to the left
Imaginary Cloud logo
blue arrow to the left
Imaginary Cloud logo
blue arrow to the left
Imaginary Cloud logo
blue arrow to the left
Imaginary Cloud logo
Ricardo Torrão
Ricardo Torrão

Développeur senior chez Imaginary Cloud, spécialisée dans la création de solutions logicielles innovantes, passionnée par la technologie et l'excellence en matière de codage.

Read more posts by this author

People who read this post, also found these interesting:

arrow left
arrow to the right
Dropdown caret icon