Ho creato un piccolo progetto di gioco in HTML5 utilizzando il motore Phaser (provato sia 1.1.5 che 1.1.6). Quindi per portarlo su piattaforma mobile, ha usato Phonegap / Cordova per Windows Phone 8, Android e iOS.
Nel mio gioco, ci sono circa 10 elementi che si animano (spostandosi dal punto a al punto b e un po 'di rotazione contemporaneamente). Su iOS e Windows Phone 8, non ho riscontrato alcun problema.
Ma con Android, le prestazioni sono inaccettabili. D'altra parte, se eseguo il gioco tramite il browser del dispositivo, funziona senza problemi. Ma l'APK compilato funziona molto a scatti e gli elementi si muovono molto lentamente e in modo tremolante.
Ho verificato che il flag di accelerazione hardware Android sia impostato su "true" nel file manifest. Ho provato a cambiarlo anche in modo falso, ma ciò non ha riflesso alcun cambiamento nelle prestazioni.
Ho controllato lo stesso su Android 4.2 sul dispositivo Samsung S2 e su quella prestazione è migliore. Ma su Asus Nexus Tab 7 (con Android 4.4) è molto a scatti, mentre il sistema operativo e il dispositivo sono entrambi più recenti. Ho anche controllato su un altro dispositivo con Android 4.3 (Samsung Galaxy Grand Duos) e anche su questo le prestazioni non sono affatto buone.
Nel mio gioco ho provato sia il rendering WebGL / Canvas (il motore Phaser utilizza Pixi.js, che esegue il fallback alla tela 2D se WebGL non è supportato), ma nessuna modifica. Allo stesso modo con easeljs.
Se qualcun altro ha affrontato problemi simili e può suggerire un modo per ottenere prestazioni simili a quelle native. Ho controllato gli esempi di cocoonjs e anche se sembrano fluidi e accettabili, non posso seguire questa strada.