App killed when starting a foreground activity on some devices
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 30/100
- Tipo de issue
- Bug
- Clareza
- Precisa de esclarecimento
- Status de atividade
- Estagnada
- Stack de tecnologia
- android
- Domínio
- mobile
Direção de pesquisa
Comece com a demo de câmera do NativeScript e reproduza o ciclo de vida em um Huawei Mediapad T5 afetado. Rastreie os eventos activityDestroyed e de saída do NativeScript ao iniciar a câmera ou o Android PrintManager e compare o resultado com o comportamento esperado de que a atividade do NativeScript continue utilizável após iniciar uma atividade em primeiro plano.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
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: 6.5.0
- Cross-platform modules: 6.5.1
- Android Runtime: 6.4.1
- Plugin(s):
@nstudio/nativescript-checkbox
nativescript-bitmap-factory": "^1.8.1",
nativescript-bluetooth
nativescript-camera
nativescript-drawingpad
nativescript-feedback
nativescript-fonticon
nativescript-geolocation
nativescript-iqkeyboardmanager
nativescript-localize
nativescript-modal-datetimepicker
nativescript-print-zebra
nativescript-printer
nativescript-sqlite
nativescript-sqlite-commercial
nativescript-sqlite-encrypted
nativescript-toasty
nativescript-zip
Describe the bug
On some devices, at least on Huawei Mediapad T5, when I start a new activity that goes on the foreground, the NativeScript activity gets killed. When I go back, the NS activity restarts.
After some investigation, I concluded that it's a battery management issue. Android always kills app activities put in the background to minimize battery usage, but on some devices (mainly Huawei from what I've found) this mechanism is very aggressive and kills the activity immediately after it goes in the background. The Android activityDestroyed event and NS exit event are not called.
I have two scenarios:
- Opening the camera with nativescript-camera plugin. The NS activity is killed but the camera still works, allowing me to retrieve the photo uri on restart.
- Printing with the system service PrintManager. In this case, when the NS activity is killed the print tool closes too. To the user, it looks like a crash.
My goal is to prevent the perceived crash at least on the second scenario. Is there a way to release enough resources when the activity is paused?
Allowing the app to ignore battery optimization and managing manually launch/app launch doesn't solve the issue.
To Reproduce
Launch the nativescript-camera demo on an affected device.
Expected behavior
The NS activity is not killed after it starts a new activity.
- Linguagem predominante
- C++
- Estrelas
- 563
- Forks
- 144
- Merge médio
- 10h 46min
- PRs com merge (30d)
- 14
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de NativeScript/android
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 38/100
NativeScript/android#2039 · 1 comentário ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 48/100
NativeScript/android#2024 ·
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 20/100
NativeScript/android#2020 ·
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 42/100
NativeScript/android#2019 ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 55/100
NativeScript/android#1986 ·
Todas as issues de NativeScript/android
Issues semelhantes
-
Website Doc Typo Aberta
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 92/100
-
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 92/100
autowarefoundation/autoware_universe#13413 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 88/100
-
automated-analysis bug memory-safety
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 88/100