4. 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)
8. TestFlight
TestFlight 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
9. Fonctionnalités
Gestion 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
11. 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
15. SDK / 1
SDK 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.
16. SDK / 2
Paramè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
17. SDK / 3
Remote 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];
26. 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)
30. 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)
31. Fonctionnalités
Notifications 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
35. Introduction
Knappsack 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)
36. Fonctionnalités
Gestion 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
40. Introduction
Solution de déploiement de fichiers ipa uniquement
Fait partie des outils Nomad (nomad-cli.com) par Mattt
Supporte :
TestFlight
HockeyApp
Amazon S3
FTP/SFTP
42. Exemple
La 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