我在Android(Lollipop)设备上安装了一个Ionic应用程序(测试版14):
ionic platform add android
ionic run android
我还手动构建了应用程序并使用adb安装了它。
该应用程序使用离子侧菜单,简单视图(列表 - >详细信息 - >详细信息)之间转换的动画在功能强大的手机上非常滞后。侧面菜单滑出时的动画非常流畅。
为了进一步调查这种情况,我从我的开发机器上提供了www目录,并在手机上的Chrome中打开了该页面,它就像人们期望的那样顺利。该应用程序也可以在iOS设备上顺利运行。
当应用程序处于离子状态时,有没有人知道为什么它如此慢,但是当它在浏览器中呈现时会按预期执行?
答案 0 :(得分:7)
我遇到了同样的问题。在需要加载大量信息的情况下更糟糕。在这种情况下,我通过设置:
来禁用过渡效果nav-transition=none
如果您需要禁用控制器的转换,请执行以下操作:
app.controller('ctrl', function($scope,$state, $ionicViewSwitcher){ $scope.goBack = function(){
$ionicViewSwitcher.nextTransition('none');
$state.go('back');
});
答案 1 :(得分:2)
我找到了一些我在离子应用程序运输中遇到问题的解决方案..
// OnState Change ..
$scope.$on('$stateChangeSuccess', function() {
$ionicLoading.show();
MyTeamListing();
})
每当我改变状态时命中服务..这会减慢应用程序。
我只是删除第一行,我的代码工作正常......
我不知道这是一个好的或坏的方式,但它为我工作很好..
如果在事务上加载太多数据,则事务变得缓慢 所以我使用在事务完成后加载数据的离子事件。
$scope.$on('$ionicView.afterEnter', function(){
console.log("afterEnter");
$ionicLoading.show();
loadRemoteData();
$ionicLoading.hide();
});
答案 2 :(得分:0)
嗯,开发混合应用程序的好处是它的代码可重用性和更快的开发,然而,我们在开发上获得的优势会导致慢混合应用程序。如果我们遵循以下几点,我们可以使应用程序相对更快: