NativeScript / NativeScript/android
Running some native code for the first time results in application lag
@triniwiz arbeitet bereits daran.
Seit 08.9.2021.
- Vorherrschende Sprache
- C++
- Sterne
- 563
- Forks
- 144
- Ø Merge
- 10 Std. 46 Min.
- Gemergte PRs (30 T.)
- 14
Beschreibung
Environment
Provide version numbers for the following components (information can be retrieved by running tns info in your project folder or by inspecting the package.json of the project):
- CLI: 5.3.0
- Cross-platform modules: 5.3.1
- Android Runtime: 5.2.x and 5.3.0 tested
Describe the bug
When using trying to use some android variables or instantiate some instances, the first call will have a heavy delay (500-600ms on a Galaxy S8).
Using the playground, reading android.R.integer.config_shortAnimTime, android.R.attr.state_pressed and android.R.attr.state_enabled all caused a delay, which froze the UI.
Downloading the project and using NS 5.3, calling nativeView.getContext().getResources().getInteger also called a delay and freeze. Edit: Running with --bundle shortens this delay for some reason (takes something like 30-40ms)
This freeze happens only on the first time the code is run, after that it takes less than 10ms.
To Reproduce
Measure how long it takes to call:
const t = android.R.integer.config_shortAnimTime; // should take long on first time
nativeView.getContext().getResources().getInteger(t); // should take long on first time in 5.3
Expected behavior
These calls should behave on the first time as they do on the second and onward.
Sample project
https://play.nativescript.org/?template=play-ng&id=28zxPb&v=6
Additional context
We discovered it by https://github.com/JoshDSommer/nativescript-ngx-shadow/issues/16
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Bewertung
Dieses Issue wurde noch nicht bewertet.