PhoneGap - Mauvaise Performance par rapport à l'Navigateur sur Android
J'ai développé une application pour android à l'aide de jquery mobile et phonegap.
J'ai déployé l'application de mon appareil via usb. La performance de l'application de l'ist vraiment mauvais, surtout lors du défilement d'une liste plus longue.
La chose étrange est: l'ensemble de L'application s'exécute en douceur si je viens d'ouvrir le navigateur sur mon téléphone et accès à la index.html directement. Même technologie, même contenu. Je n'utilise pas le phonegap api native ou quelque chose de similaire.
Testé avec phonegap 1.5.0 et 1.7.0rc1, jquery mobile 1.1.0 sur android 4.0.2.
Des idées?
En supposant que les deux sont en utilisant le système de bibliothèque webkit, il semble en être de différents paramètres de configuration ou d'autres add ons dans un environnement ou les autres, ou bien quelque chose de bizarre dans votre code que les défis l'un mais pas l'autre. Pourrait être intéressant de souligner à la fois à un javascript site de référence
Je suis juste curieux de savoir comment grand d'une liste dont nous parlons ici?
environ 50 éléments avec des vignettes
Je n'utilise pas tous les plugins ou le code qui s'exécute dans phonegap
Vous n'avez pas le tout, mais le navigateur peut très bien avoir des extensions/ remplace le système de webview fonctionnalité - c'est ce que votre lien spécule. Mais la règle des problèmes dans votre javascript - point à la fois à un site de référence et de voir si vous voyez des éléments de preuve d'une différence de performance sur quelqu'un d'autre code.
Je suis juste curieux de savoir comment grand d'une liste dont nous parlons ici?
environ 50 éléments avec des vignettes
Je n'utilise pas tous les plugins ou le code qui s'exécute dans phonegap
Vous n'avez pas le tout, mais le navigateur peut très bien avoir des extensions/ remplace le système de webview fonctionnalité - c'est ce que votre lien spécule. Mais la règle des problèmes dans votre javascript - point à la fois à un site de référence et de voir si vous voyez des éléments de preuve d'une différence de performance sur quelqu'un d'autre code.
OriginalL'auteur rbk | 2012-04-28
Vous devez vous connecter pour publier un commentaire.
Honeycomb (3.0), de la crème Glacée (4.0) et la face postérieure des appareils, vous pouvez augmenter les performances par adjonction, dans la < ... > tag:
Vous pouvez définir la minSdk à 8 (Android 2.2) pour la compatibilité et la targetSdk à 15 (Android 4.0) et qui ferait de l'accélération matérielle de travail lorsque son disponible sur l'appareil.
Je crois qu'avec cet indicateur de la performance de mes applications, est égale à exécuter dans le navigateur, donc je suppose que c'est parce que le navigateur a été codé avec l'accélération matérielle 🙂
cela a fonctionné pour moi aussi. la question que je vivais était autour de clavier/taper la performance lors de l'utilisation de Phonegap + FastClick + Android 4.1.1+ - taper la performance a été EXTRÊMEMENT lag (pas de problèmes dans le navigateur ou dans Android 2.3). l'activation de ce drapeau a résolu le problème 🙂
Wow! - il vraiment faire BEAUCOUP mieux dans ma terrible Samsung avec 2,3
OriginalL'auteur alfongj
J'ai eu un problème similaire: une page avec une liste plus longue de "moyen" complexe sur le thème de divs. Le navigateur de téléphone HTC avait pas de problèmes dans l'affichage. Mais à l'intérieur de l'app phonegap rendu complètement échoué. J'ai vu une sorte de WSOD, qui a disparu après avoir touché l'écran. Après le toucher, la page a été affichée correcte.
Le problème n'était pas en place, quand j'ai raccourci la div-liste à un ou deux div-éléments ou quand j'ai réduit la sous-éléments dans les divs et réduit le rendu de l'effort provoqué par la css complexité.
L'écran blanc qui ressemblait, si tout le corps était invisible, puisque seuls les documents couleur d'arrière-plan a été affiché (j'ai ajouté un peu de rose pour cette). Donc, je suppose, le rendu était le problème après la lecture de ce fil
J'ai essayé les différentes propositions que j'ai trouvé dans ce fil pour rendre l'application sans le travail "WSOD". Mais rien n'a fonctionné. Certains d'entre eux ont pris de l'application de l'affichage de vraiment pire.
Enfin, après toute une journée de recherche, je l'ai fait. Je l'ai mis dans la balise (pas la balise) de mon AndroidManifest
Maintenant, l'application se comporte de la même manière rapide que mon webbrowser. Semble que, si l'accélération matérielle n'est pas toujours la meilleure caractéristique...
Mes versions:
phonegap 3.5.0, Android 4.0.3, jQuery v2.1.0, HTC Sense 3.6
OriginalL'auteur user3595386
Trouvé une réponse ici: http://groups.google.com/group/phonegap/browse_thread/thread/94da1cf881abe995/6d4f7aea7aeba523?lnk=gst&q=performance
Il y a probablement une différence entre le navigateur natif et la webview en termes de performances javascript.
OriginalL'auteur rbk
Si vous pouvez confirmer le navigateur fonctionne mieux (que ce n'est pas quelque chose de sous-optimale dans votre code frustrante, mais pas les autres), vous pourriez envisager le déploiement d'un html5 application hors ligne, de sorte que vous aurez fait exécuter dans le navigateur.
OriginalL'auteur Chris Stratton
Nous avons rencontré des problèmes de performance lors du défilement de la même quantité d'éléments de la liste avec jquery mobile. La performance a été si pauvres (on n'a même pas essayer de PhoneGap, environnement) qui nous a réécrit l'application à l'aide iScroll bibliothèque... maintenant, l'application des parchemins vraiment bien.
Si vous êtes au début du développement, vous pourriez essayer de changer l'INTERFACE utilisateur de la bibliothèque.
Après cette situation, le déploiement d'applications de test des appareils assez souvent pour gérer les problèmes de performances dans le temps... c'est devenu une "politique" 🙂
OriginalL'auteur Peter Aron Zentai