Appareils Android virtuels de seiche

Cuttlefish est un appareil Android virtuel configurable qui peut s'exécuter à la fois à distance (à l'aide d'offres cloud tierces telles que Google Cloud Engine) et localement (sur des machines Linux x86).

Objectifs de seiche

  • Libérez le développeur de la plate-forme et de l'application de la dépendance au matériel physique pour développer et valider les modifications de code.
  • Reproduisez le comportement basé sur le framework d'un appareil réel en mettant l'accent sur la haute fidélité en maintenant un alignement étroit avec le framework principal.
  • Prend en charge tous les niveaux d'API après 28.
  • Fournissez un niveau de fonctionnalité cohérent à tous les niveaux d’API, aligné sur le comportement sur le matériel physique.
  • Activer l'échelle :

    • Offre la possibilité d’exécuter plusieurs appareils en parallèle.
    • Activez l’exécution simultanée de tests avec une haute fidélité à un coût d’entrée inférieur.
  • Fournissez un appareil configurable avec la possibilité d'ajuster le facteur de forme, la RAM, les processeurs, etc.

Comparez Cuttlefish à d’autres appareils

Seiche et émulateur Android

Il existe de nombreuses similitudes avec l' émulateur Android , mais Cuttlefish garantit une fidélité totale au framework Android (qu'il s'agisse d'un AOSP pur ou d'une implémentation personnalisée dans votre propre arborescence). Dans une application réelle, cela signifie que vous devez vous attendre à ce que Cuttlefish réponde à vos interactions au niveau du système d'exploitation, tout comme une cible téléphonique physique construite avec la même source de système d'exploitation Android personnalisée ou pure.

L'émulateur Android a été construit autour du cas d'utilisation visant à faciliter le développement d'applications, et il contient de nombreux crochets fonctionnels pour faire appel aux cas d'utilisation du développeur d'applications Android. Cela peut présenter des défis si vous souhaitez créer un émulateur avec votre framework Android personnalisé. Si vous avez besoin d'un appareil virtuel qui sera représentatif de votre code de plate-forme/framework personnalisé ou de la pointe de l'arbre Android, alors Cuttlefish est une option virtuelle idéale. Il s’agit du dispositif canonique permettant de représenter l’état actuel du développement de l’AOSP.

Seiche et dispositif physique

Les principales différences entre un appareil virtuel Cuttlefish et votre appareil physique se situent au niveau de la couche d'abstraction matérielle (HAL), ainsi que de tout logiciel qui interagit avec tout matériel personnalisé. À l'exception des implémentations spécifiques au matériel, vous devez vous attendre à un comportement fonctionnellement équivalent entre Cuttlefish et un périphérique physique.

Comment la seiche peut-elle aider ?

Vous pouvez interagir avec Cuttlefish comme vous le feriez avec n'importe quel autre appareil Android que vous pourriez utiliser pour le débogage. Il s'enregistrera en tant qu'appareil normal via adb et vous pourrez interagir avec lui comme un appareil physique via un bureau à distance. Les cas d'utilisation sont vastes et peuvent couvrir les tests d'applications, les tests de création de systèmes personnalisés, etc.

Étant donné que Cuttlefish s'efforce d'obtenir une fidélité totale au framework, il peut être utilisé pour des tests fonctionnels de votre framework et/ou de vos applications sans dépendance matérielle physique impossible à émuler.

Comment la seiche est-elle couramment utilisée pour les tests aujourd’hui ?

Certaines applications courantes de la seiche pour les tests comprennent :

  • CTS
  • Conformité au cadre
  • Tests d'intégration continue
  • Suites de tests personnalisées

Puis-je héberger des seiches dans le nuage ?

Oui, Cuttlefish prend en charge nativement Google Cloud et la prise en charge d'autres plates-formes cloud est prévue.

Commencer

Pour obtenir des conseils sur la création d’une instance Cuttlefish basée sur AOSP, consultez Utiliser Cuttlefish .

,

Cuttlefish est un appareil Android virtuel configurable qui peut s'exécuter à la fois à distance (à l'aide d'offres cloud tierces telles que Google Cloud Engine) et localement (sur des machines Linux x86).

Objectifs de seiche

  • Libérez le développeur de la plate-forme et de l'application de la dépendance au matériel physique pour développer et valider les modifications de code.
  • Reproduisez le comportement basé sur le framework d'un appareil réel en mettant l'accent sur la haute fidélité en maintenant un alignement étroit avec le framework principal.
  • Prend en charge tous les niveaux d'API après 28.
  • Fournissez un niveau de fonctionnalité cohérent à tous les niveaux d’API, aligné sur le comportement sur le matériel physique.
  • Activer l'échelle :

    • Offre la possibilité d’exécuter plusieurs appareils en parallèle.
    • Activez l’exécution simultanée de tests avec une haute fidélité à un coût d’entrée inférieur.
  • Fournissez un appareil configurable avec la possibilité d'ajuster le facteur de forme, la RAM, les processeurs, etc.

Comparez Cuttlefish à d’autres appareils

Seiche et émulateur Android

Il existe de nombreuses similitudes avec l' émulateur Android , mais Cuttlefish garantit une fidélité totale au framework Android (qu'il s'agisse d'un AOSP pur ou d'une implémentation personnalisée dans votre propre arborescence). Dans une application réelle, cela signifie que vous devez vous attendre à ce que Cuttlefish réponde à vos interactions au niveau du système d'exploitation, tout comme une cible téléphonique physique construite avec la même source de système d'exploitation Android personnalisée ou pure.

L'émulateur Android a été construit autour du cas d'utilisation visant à faciliter le développement d'applications, et il contient de nombreux crochets fonctionnels pour faire appel aux cas d'utilisation du développeur d'applications Android. Cela peut présenter des défis si vous souhaitez créer un émulateur avec votre framework Android personnalisé. Si vous avez besoin d'un appareil virtuel qui sera représentatif de votre code de plate-forme/framework personnalisé ou de la pointe de l'arbre Android, alors Cuttlefish est une option virtuelle idéale. Il s’agit du dispositif canonique permettant de représenter l’état actuel du développement de l’AOSP.

Seiche et dispositif physique

Les principales différences entre un appareil virtuel Cuttlefish et votre appareil physique se situent au niveau de la couche d'abstraction matérielle (HAL), ainsi que de tout logiciel qui interagit avec tout matériel personnalisé. À l'exception des implémentations spécifiques au matériel, vous devez vous attendre à un comportement fonctionnellement équivalent entre Cuttlefish et un périphérique physique.

Comment la seiche peut-elle aider ?

Vous pouvez interagir avec Cuttlefish comme vous le feriez avec n'importe quel autre appareil Android que vous pourriez utiliser pour le débogage. Il s'enregistrera en tant qu'appareil normal via adb et vous pourrez interagir avec lui comme un appareil physique via un bureau à distance. Les cas d'utilisation sont vastes et peuvent couvrir les tests d'applications, les tests de création de systèmes personnalisés, etc.

Étant donné que Cuttlefish s'efforce d'obtenir une fidélité totale au framework, il peut être utilisé pour des tests fonctionnels de votre framework et/ou de vos applications sans dépendance matérielle physique impossible à émuler.

Comment la seiche est-elle couramment utilisée pour les tests aujourd’hui ?

Certaines applications courantes de la seiche pour les tests comprennent :

  • CTS
  • Conformité au cadre
  • Tests d'intégration continue
  • Suites de tests personnalisées

Puis-je héberger des seiches dans le nuage ?

Oui, Cuttlefish prend en charge nativement Google Cloud et la prise en charge d'autres plates-formes cloud est prévue.

Commencer

Pour obtenir des conseils sur la création d’une instance Cuttlefish basée sur AOSP, consultez Utiliser Cuttlefish .