Titanium JIRA Archive
Titanium SDK/CLI (TIMOB)

[TIMOB-26626] Android apps are taking much longer to load than they did on previous sdks

GitHub Issuen/a
TypeBug
PriorityCritical
StatusClosed
ResolutionFixed
Resolution Date2018-12-11T20:33:31.000+0000
Affected Version/sn/a
Fix Version/sRelease 7.5.1
ComponentsAndroid
Labelsn/a
Reporterpritish.george
AssigneeGary Mathews
Created2018-12-04T10:06:47.000+0000
Updated2019-06-11T14:17:08.000+0000

Description

Android apps are taking much longer to load than they previously did. A default classic app is taking ~ 1.9 secs to load whereas a default alloy app takes ~1.6 secs. I am using Ti SDK 7.5.0. In the past i have developed apps using Ti SDK 5.5.1 and they used to load in under 0.5 secs. However it's significantly higher now. Is there any way this load time can be reduced?

Comments

  1. Michael Gangolf 2018-12-04

    When creating a new empty app (appc new) and run it I see the following: *Start flow*
       [INFO]  TiApplication: (main) [0,0] checkpoint, app created.
       [INFO]  TiApplication: (main) [95,95] Titanium 7.4.1 (2018/10/08 10:38 undefined)
       [INFO]  MultiDex: VM with version 2.1.0 has multidex support
       [INFO]  MultiDex: Installing application
       [INFO]  MultiDex: VM has multidex support, MultiDex support library is disabled.
       [INFO]  TiApplication: (main) [30,125] Analytics have been disabled
       [INFO]  TiApplication: (main) [2253,2378] Titanium Javascript runtime: v8
       [INFO]  TiRootActivity: (main) [0,0] checkpoint, on root activity create, savedInstanceState: null
       [WARN]  art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
       [INFO]  TiApplication: (main) [369,369] Analytics have been disabled
       [INFO]  TiRootActivity: (main) [0,0] checkpoint, on root activity resume. activity = com.miga.bench.Test_benchActivity@2284777
       [WARN]  InputMethodManager: com.miga.bench spent 122ms to start processing msg:100
       
    the *Analytics have been disabled* part is called twice. After the first one it says *checkpoint, on root activity create, savedInstanceState: null* and then after the second one it says *checkpoint, on root activity resume. activity = com.miga.bench.Test_benchActivity@2284777*. I'm not sure if that is actually calling it twice (starts it and the resumes it) at a cold start. (same with 7.5.0, I've just tested 7.4.1 before). A restart (open app, close it with the back button, reopen it again) is faster and the Analytics string is only shown once. Removing the app out of the Android launcher and then restart it will be slower again and the output is as above. *Bootstrap part* Also while investigating the listview.js part in another ticket I could see that the bootstrap process (analysing the childtemplates,...) is done every app start. Not sure how heavy this process is but could that be cached?
  2. Gary Mathews 2018-12-07

    master: https://github.com/appcelerator/titanium_mobile/pull/10518
  3. Gary Mathews 2018-12-11

    7_5_X: https://github.com/appcelerator/titanium_mobile/pull/10530
  4. Lokesh Choudhary 2018-12-11

    FR Passed. PR's merged.
  5. Lokesh Choudhary 2018-12-11

    Verified the fix with SDK 7.5.1.v20181211123622 & 8.0.0.v20181211123751. Closing.
  6. pritish.george 2019-06-11

    App load time using SDK 8.0.1 GA is still an average of 2 secs for Default Alloy and Classic Projects. I don’t think the issue should be closed. The app load time is too long. Especially since it was ~ 0.5 secs using older sdks(5.5.1). Is there any way to get the app load time down?

JSON Source