Trucs & Astucespour éviter les mauvaises surprises!       Thierry-Dimitri Roy       7 Décembre 2011
La Presse Hockey         La Presse Mobile5000+ Téléchargements   10 000+ Téléchargements
“Belle application, mais CPU élevé Prend tout le temps  environ 15% de mon CPU dual core 1.2Ghz. Je ne sais pas   si cest ...
Jenkins
Jenkins• Unit   tests avec Robotium
Jenkins• Unit   tests avec Robotium• Release  • Proguard, Signed,Jaraligned  • Git Tag  • Dépose    dans Dropbox
Outils
Outils• Télécharger   le code source d’Android
Outils• Télécharger   le code source d’Android• RoboGuice
Outils• Télécharger   le code source d’Android• RoboGuice• Findbugs
Outils• Télécharger   le code source d’Android• RoboGuice• Findbugs• Superoneclick • root   et drivers
Outils• Télécharger   le code source d’Android• RoboGuice• Findbugs• Superoneclick • root    et drivers• Pensezà utiliser ...
Outils
Outils• Écran   caché
Tests automatisés
Tests automatisés• Robotium   (lent)
Tests automatisés• Robotium    (lent)• Delegate   pattern avec JUnit • La logique qui se trouve   dans Activity peut être ...
Qualité
Qualité• Monkey   tests
Qualité• Monkey   tests • Très      bon pour les   “memory leaks”
Qualité• Monkey   tests • Très      bon pour les   “memory leaks” • Maiscelles-ci  existeront toujours...
Qualité• Monkey   tests • Très      bon pour les   “memory leaks” • Maiscelles-ci  existeront toujours... • Activez   Stri...
Qualité• Monkey   tests • Très      bon pour les   “memory leaks” • Maiscelles-ci  existeront toujours... • Activez   Stri...
Qualité
Qualité• ACRA
Qualité• ACRA • Intégrer   BugSense
Qualité• ACRA • Intégrer   BugSense • Utilisez   une variable  custom
Qualité
Qualité• Commentaires   directement dans l’app • Meilleurs communication   avec l’usager • Insérezle rapport ACRA   en cha...
Performance
Performance• layoutops
Performance• layoutops• Le   moins possible de log (ou utilisez Roboguice “Ln”)
Performance• layoutops• Le   moins possible de log (ou utilisez Roboguice “Ln”)• Lemoins possible de création d’objets dan...
Merci
Liens•   La Presse Mobile: https://market.android.com/details?id=ca.lapresse.android.lapressemobile•   La Presse Hockey: h...
Prochain SlideShare
Chargement dans…5
×

Trucs et astuces sur le dévelopment Android

984 vues

Publié le

"Trucs et astuces sur le dévelopment Android"
Thierry-Dimitri Roy
Programmeur principale de La Presse Mobile et La Presse Hockey sur Android

Présentation donnée pour Android Montréal le 7 décembre 2011

Publié dans : Technologie
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Trucs et astuces sur le dévelopment Android

  1. 1. Trucs & Astucespour éviter les mauvaises surprises! Thierry-Dimitri Roy 7 Décembre 2011
  2. 2. La Presse Hockey La Presse Mobile5000+ Téléchargements 10 000+ Téléchargements
  3. 3. “Belle application, mais CPU élevé Prend tout le temps environ 15% de mon CPU dual core 1.2Ghz. Je ne sais pas si cest la synchronisation, mais cest louche. Sinon belle application.” - Commentaire sur le Market La Presse Hockey La Presse Mobile5000+ Téléchargements 10 000+ Téléchargements
  4. 4. Jenkins
  5. 5. Jenkins• Unit tests avec Robotium
  6. 6. Jenkins• Unit tests avec Robotium• Release • Proguard, Signed,Jaraligned • Git Tag • Dépose dans Dropbox
  7. 7. Outils
  8. 8. Outils• Télécharger le code source d’Android
  9. 9. Outils• Télécharger le code source d’Android• RoboGuice
  10. 10. Outils• Télécharger le code source d’Android• RoboGuice• Findbugs
  11. 11. Outils• Télécharger le code source d’Android• RoboGuice• Findbugs• Superoneclick • root et drivers
  12. 12. Outils• Télécharger le code source d’Android• RoboGuice• Findbugs• Superoneclick • root et drivers• Pensezà utiliser des fragments dès maintenant
  13. 13. Outils
  14. 14. Outils• Écran caché
  15. 15. Tests automatisés
  16. 16. Tests automatisés• Robotium (lent)
  17. 17. Tests automatisés• Robotium (lent)• Delegate pattern avec JUnit • La logique qui se trouve dans Activity peut être facilement réutilisée par TabActivity
  18. 18. Qualité
  19. 19. Qualité• Monkey tests
  20. 20. Qualité• Monkey tests • Très bon pour les “memory leaks”
  21. 21. Qualité• Monkey tests • Très bon pour les “memory leaks” • Maiscelles-ci existeront toujours...
  22. 22. Qualité• Monkey tests • Très bon pour les “memory leaks” • Maiscelles-ci existeront toujours... • Activez StrictMode
  23. 23. Qualité• Monkey tests • Très bon pour les “memory leaks” • Maiscelles-ci existeront toujours... • Activez StrictMode • Débuggez ensuite votre app pour voir les threads non terminées
  24. 24. Qualité
  25. 25. Qualité• ACRA
  26. 26. Qualité• ACRA • Intégrer BugSense
  27. 27. Qualité• ACRA • Intégrer BugSense • Utilisez une variable custom
  28. 28. Qualité
  29. 29. Qualité• Commentaires directement dans l’app • Meilleurs communication avec l’usager • Insérezle rapport ACRA en champs cachés
  30. 30. Performance
  31. 31. Performance• layoutops
  32. 32. Performance• layoutops• Le moins possible de log (ou utilisez Roboguice “Ln”)
  33. 33. Performance• layoutops• Le moins possible de log (ou utilisez Roboguice “Ln”)• Lemoins possible de création d’objets dans une ListView
  34. 34. Merci
  35. 35. Liens• La Presse Mobile: https://market.android.com/details?id=ca.lapresse.android.lapressemobile• La Presse Hockey: https://market.android.com/details?id=ca.lapresse.android.lapressehockey• RoboGuice: https://code.google.com/p/roboguice/• Robotium: https://code.google.com/p/robotium/• SuperOneClick: http://shortfuse.org/• Monkey Tests: http://developer.android.com/guide/developing/tools/monkey.html• ACRA: https://code.google.com/p/acra/• BugSense: http://www.bugsense.com/• Thierry-Dimitri Roy sur Google Plus: https://plus.google.com/105344175486242358933

×