Skip to content

Instantly share code, notes, and snippets.

@ThibaultFighieraPJ
Last active February 20, 2023 23:54
Show Gist options
  • Save ThibaultFighieraPJ/1432bde3cd49749e571b3491832ada38 to your computer and use it in GitHub Desktop.
Save ThibaultFighieraPJ/1432bde3cd49749e571b3491832ada38 to your computer and use it in GitHub Desktop.
Intégration de SDKs Externes et Api Tierce Android

SDK Externe et API Tierces

Objectif : Lister ce à quoi les SDK externes et API tierces doivent se conformer avant d'être intégrés dans l'application Android PagesJaunes.

Veuillez forker ce gist et mettre un ✅ devant les cases vous concernant. Renvoyez-nous le lien de votre document par email avec l'explication de ce que vous ne faites pas et pourquoi ? 🙂

Documentation

  • En ligne
    • Publique
    • Accès restreint
  • Hors ligne
    • Email
    • Papier
  • Fonctions / Méthodes publiques documentées
    • JavaDoc
    • KDoc
  • Codes d'exemples (Samples)
    • Contient des Tests Unitaires (TU)
    • Contient des Tests Fonctionnels (TF)

Intégration du SDK

Accès au code source

  • Non Divulgation Agreement (NDA)
  • Open Sources
    • License Permissive (i.e. MIT, GNU...)
    • License Contraignante (i.e. GPL...)
  • Pas d'accès au source

Intégration au sein de notre App

  • Intégration via Héritage
  • Intégration via Composition

Livraison du SDK

  • Version Beta
    • Maven
    • JCenter
    • jar/aar
  • Version Stables
    • Maven
    • JCenter
    • jar/aar

Logs

  • Activation / Désactivation
    • Intégration
    • Production
  • Niveaux paramétrables
    • Informations
    • Debug
    • Warning
    • Error

Environnements d'utilisation

  • Dashboard (si nécessaire)
    • Intégration
    • Production
  • Controle de l'activation au RunTime
    • Intégration
    • Production
  • Paramétrable à la compilation
    • Intégration
    • Production
  • Paramétrable à chaud (RunTime)
    • Intégration
    • Production
  • SandBox en intégration
    • Cas de tests spécifiques (mocks)
    • Copie de Production

Développement du SDK

Numérotation des versions

Stabilité et changements de l'API

  • version Majeure
  • version Mineur
  • version Patch

Guide de migration

  • Publique
  • Accès restreint
  • N/A

Développeur(s) du SDK

  • Android dédié
  • Android / iOS
  • Full stack

Couverture de test de l'API

  • 0 %
  • 25 %
  • 50 %
  • 75 %
  • 100 %

Suivi des Actions (Features / Bugs)

  • Communication avec nos équipes
    • Email
    • Jira
    • Trello
    • Slack
    • Autre
  • Profil du contact assurant la Communication
    • Développeur
    • Marketing / Commercial
  • Système de Remonté de crashs
    • Firebase
    • Fichier de mapping disponible
      • SDK
      • NDK
    • Crashlytics
  • Temps de traitement bug Bloquant (Ouverture - Livraison)
    • < 2 semaines
    • < 1 mois
    • < 1,5 mois
    • = 2 mois

Performances

Vitals

  • Stabilité
    • < 0.1 %
    • < 0.5 %
    • < 1 %
    • < 3 %
    • < 5 %
  • Application Non Responsive (ANR)
    • < 0.1 %
    • < 0.5 %
    • < 1 %
    • < 3 %
    • 3 %
  • Réveil de l'app en tache de fond (WakeLock)
    • < 1 / heure
    • < 3 / heure
    • < 6 / heure
    • < 10 / heure
    • 10 / heure

Poids du SDK

  • < 500 KB
  • < 1 MB
  • < 2.5 MB
  • < 5 MB

Vie Privée

  • Conforme RGPD
  • Respecte les Conditions Utilisation du Play Store
  • Liste des Données personnelles collectées
  • Permissions
    • Liste accessible
    • Explications des besoins
    • Désactivation de Permissions
      • Oui
      • Partiellement
      • Non

Réseau

  • HTTPS valide
  • Données sensibles stockée sur le tel
  • Certificat de debug fourni
    • Publique
    • Accès restreint
    • Non

Dépendances du SDK

  • Non transitives
  • Liste disponible
  • Les bibliothèques intégrée doivent être au plus proche de leurs dernières version disponible (max une version mineure de décalage)
  • Ne contient pas de code source de bibliothèques intégrés au sources du SDK
  • Support des Architectures processeur
    • Toutes
    • Partiel
  • Pas d'extensions de fonctions Kotlin

Nous préférons les SDKs qui sont utilisés par un nombre important d'app. Nous ne souhaitons pas être les testeurs d’un nouveau SDK mais exploiter des outils stables, solides et optimisés pour le mobile.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment