Witam.
Proszę o pomoc w rozwiązaniu problemu:
Jak zrobić aby aktywność nie trafiała na stos aktywności? Dodam że metoda onPause() { super.onPause(); this.finish(); } nie spełnia tego zadania i aktywność nadal jest widoczna na stosie.
Pozdrawiam.
stos aktywności
- Rejestracja: dni
- Ostatnio: dni
- Postów: 8
- Rejestracja: dni
- Ostatnio: dni
- Postów: 161
Poszukaj na temat "no history".
- Rejestracja: dni
- Ostatnio: dni
- Postów: 8
w pliku manifestu ustawiłem noHistory na true i nadal po wciśnięciu przycisku home itd aktywność nadal jest widoczna na stosie...
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Kraków
- Postów: 834
Możesz skorzystać z finishAndRemoveTask() z poziomu kodu. W manifeście flaga, która Cię interesuje to excludeFromRecents.
Jeżeli chcesz nadpisywać zachowanie przycisku home, to na pewno nie przez onPause(), bo to tylko proszenie się o kłopoty. Poszukaj informacji o tym jak się nadpisuje ten przycisk.
Natomiast dużo ważniejsza sprawa, to po co chcesz to w ogóle robić? O ile jeszcze jestem w stanie zrozumieć usuwanie aplikacji przy naciśnięciu jakiegoś własnego przycisku (ale i tak trzeba mieć dobry powód do tego), to robienie tego przy naciśnięciu home, to prawie na pewno jakaś UXowa paranoja.
- Rejestracja: dni
- Ostatnio: dni
- Postów: 8
Dzięki za odpowiedz metoda finishAndRemoveTask() rozwiązała mój problem. Chciałem aby aktywność nie była widoczna na stosie ponieważ jest ona konfiguracją widgetu ekranu domowego i następuje w niej zapisanie preferencji, nie chciałem aby po usunięciu widgetu z ekranu domowego nadal była możliwość dodawania preferencji na jego Id jeżeli jego już fizycznie nie ma na ekranie.
dziękuję i pozdrawiam