Ionique: transitions lentes dans l'application android installée

j'ai installé une application ionique (beta 14) sur mon appareil Android (Lollipop) en utilisant:

ionic platform add android
ionic run android

j'ai également fabriqués manuellement l'application et installé avec la bad.

l'application utilise des menus ion-side, et les animations pour les transitions entre des vues simples (list -> detail -> detail) sont incroyablement attardées sur un téléphone capable. L'animation lors de la sortie du menu latéral est très douce en contraste.

pour enquêter davantage sur la situation, j'ai servi le www Annuaire de ma machine de dev et a ouvert cette page dans Chrome sur le téléphone et il était aussi lisse que l'on pourrait s'y attendre. L'application fonctionne également en douceur sur les appareils iOS.

Est-ce que quelqu'un a des indices sur la raison pour laquelle il est si lent quand l'application est en ionique, mais fonctionne comme prévu quand il est juste rendu dans le navigateur?

19
demandé sur jbeck 2015-03-03 21:28:57

3 réponses

j'ai fait face au même problème. C'est pire dans le cas que vous avez besoin de charger beaucoup d'informations. À cette occasion, je désactive l'effet de transition en mettant:

nav-transition=none

si vous devez désactiver la transition de votre controller, faites ce qui suit:

app.controller('ctrl', function($scope,$state, $ionicViewSwitcher){ $scope.goBack = function(){
    $ionicViewSwitcher.nextTransition('none');
    $state.go('back');
});
7
répondu iMad 2015-06-06 20:47:50

j'ai trouvé quelques solutions par lesquelles je fais face au problème dans l'app ionique transitiosn..

  1. après changement d'État, j'utilise ce code..

//OnState Changement..

$scope.$on('$stateChangeSuccess', function() {

    $ionicLoading.show();

   MyTeamListing();

  })

qui frappent servent chaque fois que je change d'état.. qui est de ralentir l'application.

J'enlève juste la première ligne et mon code fonctionne très bien...

je ne sais pas, c'est une bonne ou une mauvaise façon, mais son travail pour moi amende..

le mouvement devient lent si trop de données sont chargées sur la transaction pour que j'utilise des événements ioniques qui chargent des données après la transaction fait.

$scope.$on('$ionicView.afterEnter', function(){
            console.log("afterEnter"); 
            $ionicLoading.show();
            loadRemoteData();
            $ionicLoading.hide();
});
2
répondu Suresh Ratten 2016-08-02 14:26:42

Eh bien, les avantages de développer une application hybride est sa réutilisation du code et son développement plus rapide cependant, quel avantage nous obtenons sur le développement résultats lent applications hybrides. Nous pouvons rendre l'application relativement plus rapide si nous suivons les points suivants:

  • absolument supprimer les commentaires et les fonctions inutiles
  • minimisez l'espace blanc, rendez vos fonctions aussi petites que possible
  • utiliser des css mini - js
  • optimisez les images, moins il y a d'images plus l'application est rapide
  • si possible, Préchargez les images voir ici
  • conservez le fichier js non essentiel au bas de la page juste avant la fin de la balise body
  • supprimer les pages inutiles, le défilement inutile et les grandes pages.
  • limitez l'utilisation des boîtes de saisie; utilisez des boutons radio,des cases à cocher et des comboboxes si possible.
  • ne pas utiliser bibliothèque jquery sauf nécessité absolue, utilisez javascript
0
répondu Sunil Lama 2016-11-16 02:53:41