Native APK build with Appery is really slow
But im paying for appery... i see. Lol just like Tiggzi. Its everyone else's fault because your product is made from everyone else.
Catch up wih the Appery.io community on our forum. Here you'll find information on the lastest questions and issues Appery.io developers are discussing.
https://forum.appery.io/
But im paying for appery... i see. Lol just like Tiggzi. Its everyone else's fault because your product is made from everyone else.
We use Apache Cordova as is, we don't make any changes to it. If you believe it's the native wrapper, there is nothing we can do.
I did test your app. It runs rather fast in the browser.. but does run a little bit slower when installed as hybrid app.
Yes, too slow for production in our case... Is there any accelerator, or some kind of tweak? I was thinking about working on it myself. Do you have any information on what is called during the app load?
I want to optimize the application hybrid to make speed priority. I program in android fairly fluently and want to know what is happening semantically so i can make it faster or remove unneeded components.
Hi Daniel,
You want to get the speed of a native application from the hybrid - it is technically impossible.
There are a lot of options to optimize:
The compression of images. Images can be pinched for specific screen types of mobile devices based on their resolution and pixel density.
Replacement of buttons fillets and gradients styling with their graphics. jQM uses CSS3-property for the construction of modern gradient transitions in colours, shadows, rounds off the corners. The mobile device processors makes all this.
Services optimization (you have not too much, but not a little). The price paid for the convenience of creating mapping in visual mode is a very specific code which might not be, if the application has been developed entirely manually.
You should also take into account the OS features. In particular, a well-known fact that the performance of applications on the Android is directly dependent on how many other applications are running or previously run since the last reboot.
I've been running tests reproducing with appery an app we have already built with jquerymobile and Cordova in order to test the speed and production quality.
I was hopeful that appery would save us development time and be good enough for a production quality app but now in beginning to doubt that.
I have a login page, a home page and an activity stream which grabs json from an api. The button click alone takes 3 seconds to register on my galaxy s4, the loading icon stops and spudders and the transitions are ugly slow, that's completely unacceptable for production.
I even went so far to load data into a local storage cache which helped a little but the clicking and lagging makes it unusable for production.
Our own implimentation runs much better, its not optimized nearly as much as it could be, uses the same libraries and doesn't have any of these problems am I missing an optimize setting somewhere ( other than the combine into a single page setting ) ?
Is it slow because of the extra JavaScript libraries needed for appery? Or is it missing some aspect of enhancement which adds speed?
I don't buy the slow hybrid app answer as being technically impossible, that sounds like an excuse to me since we have a proven working copy of an app using the same libraries which works nearly as well as a native app.
There are plenty of Cordova apps on the market that you would be hard pressed to distinguish from native apps.
Hello!
If you try to compare your app with real native app you'll see latency as well.
You are right - app created with Appery.io IDE it's not just jQueryMobile+Cordova. There is specific Appery.io code for mapping, services, components, some of it does not exist in jQueryMobile library. And everything should interact by means of visual event's handlers.This entails implications on performance.
Our dev team is doing our best to improve performance, but it's extremely not a simple task - to make convenient and fast online-IDE and very fast application as a result.
Just keep in mind that the performance of a specific application will always depend on the developer's skills. Even the native application can be very slow.
Speed of button click - is old problem of jQueryMobile framework, which implements visually realistic buttons with animation effects. These effects cause a significant slowdown, as animation for them can be created in many ways - through JS and timers or with CSS3. Both of these methods have their advantages as well as disadvantages .
For example JS animation works for your contemporary Galaxy S4 much faster than not less contemporary current methods implemented through CSS3, thus the browser should be able to use hardware graphics acceleration, and be able to do it with maximum performance - standard was described long ago, and OS Android supports it for several years. But, unfortunately, reality is far more complex. We have to adjust to different devices squeezing every milliseconds of speed.
You are not forced to rely on the visual part of the event creation, assign values to the properties of the components - you still have general JavaScript application where you can write custom code, perhaps it would be more efficient than that is generated automatically.
Just to add, can you share the app that you built and the app that you built in Appery.io so we can test and compare the performance?
Hi,
I built a completely offline app through appery (Manglish CSI Worship). While I understand there are a lot of pages in the app (about 1200), it does take over a minute to load the first page or search results. Even on my Samsung Galaxy S6 Edge that I use for testing, occassionally it gets slow after continuous usage and I have to re-open the app.
How can I improve the speeds with so many pages and basic searches through them?
Hello George,
Sorry for the radio silence here. I'm afraid that in your case the only way is to change the logic of your app, but please also check this post: https://getsatisfaction.com/apperyio/...
The link is great ... thanks for sharing it.