Slow loading with dev / bundle / uglify / snapshot / release builds


#1

I’m wondering what can be done to improve performance on loading and also for routing pages and opening modals sometimes. It is kind of disappointingly slow with an angular app. I’m wondering if I need to ditch angular.

I will focus the the initial loading as I can eliminate any performance limiting design decisions. I have an app I’m developing this the result of different type of builds

dev ~ 15 seconds
bundle + uglify + snapshot ~ 10 seconds
release ~ 10 seconds
release + uglify + snapshot ~ 10 seconds

it is not the most complicated but admittedly there is a bit of complicity but nto really on the UI which seem to be the big issue.

As you can see it is all fairly recent specs

│ Component        │ Current version │ Latest version │ Information      │
│ nativescript     │ 3.4.0           │ 3.4.1          │ Update available │
│ tns-core-modules │ 3.4.0           │ 3.4.0          │ Up to date       │
│ tns-android      │ 3.4.0           │ 3.4.1          │ Update available │
│ tns-ios          │                 │ 3.4.1          │ Not installed    │

Now in case ti was jsut the app i tried thsi with the hello world app. This was the result

dev ~ 15 seconds
bundle + uglify + snapshot ~ 5 seconds
release ~ 5 seconds
release + bundle + uglify + snapshot ~ 5 seconds

this is quite long time for a simple app. I agree it is an improvement on 15 second, but with he minimum of complexity this goes up.

To put this in perceptive from a fresh start Whatsapp loads in 2 second, Chrome Canary loads in 3 second not including the last web page (which load in 1-2 seconds on my network for a yahoo/google.com)

Now pages and modals don’t have to load slow, however it you really don’t have to for them to be start loading slowly, and with some other testing I’ve doen thsi is nothing to do with data models . In fact if you have a hybrid app, where there was angular in running in the webview it wouldn’t surprise me if thing loaded a bit quicker.

I wonder if, in trying to make angular work natively becuase it may required some round about method to model it, this has come at a performance cost. I suspect it is not purely down to the size of of the angular code.

Some more info about my testing device

[ro.board.platform]: [msm8916]
[ro.boot.hardware]: [qcom]
[ro.boot.hardware.sku]: [XT1562]
[ro.boot.secure_hardware]: [1]
[ro.boot.serialno]: [ZY2226SJZ5]
[ro.build.version.sdk]: [23]
[ro.hardware]: [qcom]
[ro.hw.revision]: [p2c]
[ro.mot.build.version.sdk_int]: [24]
[ro.product.brand]: [motorola]
[ro.product.manufacturer]: [motorola]
[ro.product.model]: [XT1562]
[ro.product.name]: [lux_reteu]
[ro.revision]: [p2c0]
[ro.serialno]: [ZY2226SJZ5]

#2

It look like it performs for the latest high end form but doesn’t perform for mid-low end phone or phone a couple of years old.

Maybe the performance hit is a bug specific to my phone/android version. However Motorola uses pure android.

I think this is potentially a serious problem. I’m not the only person that has reported these issue and it is not as if apps cannot perform well on this platform.

I wonder if it is a limitation on the available strategies for modelling angular interfaces or there are other way to model agular which would be more efficient or was to streamline it.

I hav tested muliple app including examples give so it is not just me or some juggernaut of an app.

you cannot have long delys after clinking route link this is a confusing experience for a user.