47
TestFlight et les outils de distribution continue Simone Civetta Xebia IT Architects

Test flight et les outils de distribution continue par simone civetta de xebia

Embed Size (px)

Citation preview

Page 1: Test flight et les outils de distribution continue par simone civetta de xebia

TestFlight et les outils de distribution continue

Simone Civetta Xebia IT Architects

Page 2: Test flight et les outils de distribution continue par simone civetta de xebia

About me

Page 3: Test flight et les outils de distribution continue par simone civetta de xebia

MAM

Page 4: Test flight et les outils de distribution continue par simone civetta de xebia

Mobile Application Management

Plateformes permettant de controller l’accès aux applications mobiles

Gèrent le déploiement et la distribution

Idéales pour la mise en place d’une stratégie BYOD dans les entreprises

Peuvent prévoir des systèmes d’analyse d’usage (ex. nombre des lancements, durée des sessions)

Page 5: Test flight et les outils de distribution continue par simone civetta de xebia
Page 6: Test flight et les outils de distribution continue par simone civetta de xebia

SaaS

Page 7: Test flight et les outils de distribution continue par simone civetta de xebia

TestFlight

Page 8: Test flight et les outils de distribution continue par simone civetta de xebia

TestFlightTestFlight est une plateforme qualifiée de Mobile Application Manager (MAM), permettant notamment :

le déploiement des build iOS et Android sur des terminaux mobiles

la gestion des utilisateurs au sein de plusieurs équipes

le suivi des usages, des sessions utilisateurs et des crashes

Page 9: Test flight et les outils de distribution continue par simone civetta de xebia

FonctionnalitésGestion automatique du profile d’approvisionnement

Detecte automatiquement nom de l’appli, version, icône

Récolte des crash (avec gestion des dsym)

SDK

Feedbacks

Checkpoints

Remote logging!

Plugin Jenkins disponible

Page 10: Test flight et les outils de distribution continue par simone civetta de xebia

Gestion des teams

Page 11: Test flight et les outils de distribution continue par simone civetta de xebia

Utilisateurs et applications

2 sections principales :

Apps : permet upload / modification / suppression des builds et le suivi des bugs et de l’utilisation de l’application.

People : donne accès à la gestion des utilisateurs de l’équipe, de la soumission des invitations ainsi que de la révocation des accès

Page 12: Test flight et les outils de distribution continue par simone civetta de xebia

Apps : détail d’un build

Page 13: Test flight et les outils de distribution continue par simone civetta de xebia

Apps : droits!

!

!

!

!

!

!

La gestion du profile d’approvisionnement est intégrée dans TF

Page 14: Test flight et les outils de distribution continue par simone civetta de xebia

People : gestion des utilisateurs

Page 15: Test flight et les outils de distribution continue par simone civetta de xebia

SDK / 1SDK disponible pour iOS et Android.

Compatible avec CocoaPods

Insérer dans application:didFinisLaunchingWithOptions:

[TestFlight  takeOff:APP_TOKEN];  

!

L’App Token est l’ID utilisé par TestFlight afin de reconnaître l’application qui génère la session. Information disponible sur la page App Token sur le site TestFlight.

Chaque token est uniquement attribué à un Bundle ID.

Page 16: Test flight et les outils de distribution continue par simone civetta de xebia

SDK / 2Paramètres supplémentaires peuvent être ajoutés avant le takeOff :

addCustomEnvironmentInformation:forKey:      

permet de remonter des informations spécifiques à afficher dans le panneau de la session

Page 17: Test flight et les outils de distribution continue par simone civetta de xebia

SDK / 3Remote logging : possibilité de rediriger les logs vers TestFlight

Accessibles directement en ligne, dans le détail d’une session utilisateur !//  MyApp-­‐prefix.pch        #import  "TestFlight.h"      #define  NSLog(__FORMAT__,  ...)  TFLog((@  "%s  [Line  %d]  "  __FORMAT__),  __PRETTY_FUNCTION__,  __LINE__,  ##__VA_ARGS__)  

!

Checkpoints : mots-clés définis par le développeur

Permettent de suivre les étapes qui sont effectuées par l’utilisateur final ! [TestFlight passCheckpoint:CHECKPOINT_NAME];

Page 18: Test flight et les outils de distribution continue par simone civetta de xebia

Support complet de iOS et Android

Page 19: Test flight et les outils de distribution continue par simone civetta de xebia

Support complet de iOS et Android

Page 20: Test flight et les outils de distribution continue par simone civetta de xebia

Apple…

Page 21: Test flight et les outils de distribution continue par simone civetta de xebia

HockeyApp

Page 22: Test flight et les outils de distribution continue par simone civetta de xebia

IntroductionHockeyApp est une solution permettant le déploiement de builds :

iOS

Mac OS

Android

Windows Phone

Windows 8

Page 23: Test flight et les outils de distribution continue par simone civetta de xebia

FonctionnalitésGestion automatique du profile d’approvisionnement

Detecte automatiquement nom de l’appli, version, icône

Récolte des crash (avec gestion des dsym)

SDK

Feedbacks

Bug Tracker!

Authentification in-app des utilisateurs

Plugin Jenkins disponible

Page 24: Test flight et les outils de distribution continue par simone civetta de xebia

PlansSolution payante

Page 25: Test flight et les outils de distribution continue par simone civetta de xebia

SDK

Récolte des crash

Feedbacks

Authentification in-app des utilisateurs

Notification de maj (alertView in-app)

Page 26: Test flight et les outils de distribution continue par simone civetta de xebia

et aussi…Ensemble d’API pour la création et la gestion des membres de l’équipe, invitations, profils d’approvisionnement, crash, feedback, etc.

WebHooks : possibilité de notifier une URL personnalisée à chaque fois qu’un événement spécifique a eu lieu (ex. nouveau crash)

Page 27: Test flight et les outils de distribution continue par simone civetta de xebia
Page 28: Test flight et les outils de distribution continue par simone civetta de xebia

Self-hosted

Page 29: Test flight et les outils de distribution continue par simone civetta de xebia

HockeyKit

Page 30: Test flight et les outils de distribution continue par simone civetta de xebia

Introduction

HockeyKit est une solution client/serveur gratuite

Développée par l’équipe de HockeyApp

Serveur : quelques fichiers PHP

Installation très facile sur n’importe quel solution de hébergement PHP (pas besoin d’une BDD)

Page 31: Test flight et les outils de distribution continue par simone civetta de xebia

FonctionnalitésNotifications in-app de maj disponibles

Simples statistiques de téléchargement (iOS seulement)

Publication des profils d’approvisionnement

SDK (très basique)

Page de release notes

Page 32: Test flight et les outils de distribution continue par simone civetta de xebia

SDK

Notification in-app de maj disponibles

Simple statistiques (iOS seulement)

Pages AppStore-like

Page 33: Test flight et les outils de distribution continue par simone civetta de xebia

Exemple

Page 34: Test flight et les outils de distribution continue par simone civetta de xebia

Knappsack

Page 35: Test flight et les outils de distribution continue par simone civetta de xebia

IntroductionKnappsack est une solution SaaS payante…

…dont le code source est distribué gratuitement sur GitHub

Supporte iOS et Android

Serveur : Java (Spring)

Interface optimisée pour l’accès depuis mobile (JQuery Mobile)

Page 36: Test flight et les outils de distribution continue par simone civetta de xebia

FonctionnalitésGestion avancée des utilisateurs:

Organisations

Groupes d’utilisateurs

Gestion des invitations

Possibilité d’organiser les applications en categories

Simples statistiques de téléchargement

API pour upload/gestion des builds

Plugin Jenkins disponible

Page 37: Test flight et les outils de distribution continue par simone civetta de xebia

Exemple

Page 38: Test flight et les outils de distribution continue par simone civetta de xebia

Shenzhen

Page 39: Test flight et les outils de distribution continue par simone civetta de xebia
Page 40: Test flight et les outils de distribution continue par simone civetta de xebia

IntroductionSolution de déploiement de fichiers ipa uniquement

Fait partie des outils Nomad (nomad-cli.com) par Mattt

Supporte :

TestFlight

HockeyApp

Amazon S3

FTP/SFTP

Page 41: Test flight et les outils de distribution continue par simone civetta de xebia

Entièrement en ligne de commande

Page 42: Test flight et les outils de distribution continue par simone civetta de xebia

ExempleLa commande!

ipa  distribute:ftp    -­‐f  Xebia.ipa  -­‐-­‐host  ftp.example.com  -­‐u  MY_USER  -­‐p  MY_PWD  -­‐-­‐mkdir  -­‐P  /apps/{CFBundleName}/{CFBundleVersion}/  

Crée automatiquement le fichier dans le chemin !

! ftp.example.com/apps/Xebia-iOS/1.0/Xebia.ipa!

!

Idéale pour intégration dans une usine logicielle

Page 43: Test flight et les outils de distribution continue par simone civetta de xebia

Tableau comparatif

Page 44: Test flight et les outils de distribution continue par simone civetta de xebia

TestFlight HockeyApp HockeyKit KnappsackSupport SaaS SaaS self-hosted self-hosted

Récuperation auto infos app ✔ ✔ ✘ ✘Gestion builds ✔ ✔ ✘ ✔

Gestion utilisateurs ✔ ✔ ✘ ✔Crashes ✔ ✔ ✘ ✘

Statistiques d’installation ✔ ✔ ✔ ✔Feedbacks ✔ ✔ ✘ ✔

Checkpoints ✔ ✘ ✘ ✘Remote Logging ✔ ✘ ✘ ✘

Authentif. utilisateurs (in-app) ✘ ✔ ✘ ✘APIs ✘ ✔ ✘ ✔

WebHooks ✘ ✔ ✘ ✘iOS ✔ ✔ ✔ ✔

Android ✘ ✔ ✔ ✔Windows Phone ✘ ✔ ✘ ✘

Intégration Jenkins ✔ ✔ ✘ ✔Taille maximale build 800Mo 2Go ∞ ∞

Prix Gratuit ≥ 10$/mois Gratuit Gratuit

Page 45: Test flight et les outils de distribution continue par simone civetta de xebia
Page 46: Test flight et les outils de distribution continue par simone civetta de xebia

One more thing…

Page 47: Test flight et les outils de distribution continue par simone civetta de xebia

May 16th, Paris