• # HTC Magic et performance

    Posté par . En réponse au journal Newton Adventure évolue sur PC et débute sur Android. Évalué à 10. Dernière modification le 25 mai 2012 à 19:40.

    J'avais à l'époque développé un jeu de tank en 2D qui tourne bien sur un HTC Magic :
    https://play.google.com/store/apps/details?id=net.fhtagn.zoob_demo

    Les sources sont dispo sur github :
    https://github.com/julienr/zoob

    Un petit retour pour que ça tourne sur un Magic :
    - J'ai utilisé C++ plutôt que Java. Le Magic n'a pas de JIT (trop peu de mémoire) et Java est donc super lent sur ce téléphone qui n'est déjà pas rapide…
    - Quitte à rester en Java, il vaut mieux éviter Canvas et Drawable et travailler directement en OpenGL. Ca permet d'être plus fin dans ce qu'on veut et on gagne des perfs.
    - Y'a tout un tas de petit "tips" pour écrire du code Java performant sur Android. Ca passe par l'utilisation de static final lorsque c'est possible, éviter les getter, etc :
    http://developer.android.com/guide/practices/design/performance.html
    - Mais si tu veux vraiment des bonnes perfs sur des téléphones bas de gamme, je crois que passer par C++ est nécessaire. C'est assez facile de faire du JNI sous Android. Pour mon jeu de tank, j'avais fais l'interface en Java et tout ce qui est jeu en C++.

    Bonne chance !