Pracuję nad aplikacją dla systemu Android dla pracodawcy dbającego o bezpieczeństwo. Jest zaniepokojony migawką ekranu, która pojawia się na Overview Screen (a.k.a, lista ostatnich zadań), która wycieka poufne informacje i chce, żebym wstawił ekran powitalny programu, zanim system zrobi to zdjęcie. Niestety nie znalazłem żadnego sposobu, aby to zrobić.Konieczność ukrycia zawartości programu w Androidzie "Ekran przeglądu"
Czego próbowałem:
- napompować przeglądać ekran powitalny w funkcji . (Brak efektu, nawet z
bringToFront
isetVisibility(View.VISIBLE)
.) - Napełnij widok ekranu powitalnego Wyświetl w
onCreate
i użyjbringToFront
w . (Ponownie, brak efektu.) - Wywołanie
setVisible(false)
w . (Wydaje się prawie działać, ponieważ ekran miga na chwilę w kolorze czarnym po przejściu z programu, ale widocznie jest ponownie widoczny przez system przed migawką.) - Wywołanie
setVisibility(View.INVISIBLE)
na najwyższym elemencie widoku . (Wydaje się, że to zadziała, ale migawka jest widoczna, zanim zadziała.)
Jestem umiarkowanie zaawansowanym programistą Androida, ale nie mogę oprzeć się wrażeniu, że istnieje proste rozwiązanie, które m brakuje.
Spróbuj ['onCreateThumbnail()'] (http://developer.android.com/reference/android/app/Activity.html#onCreateThumbnail%28android.graphics.Bitmap,%20android.graphics.Canvas%29), ponieważ myślę, że to jest to, co jest tutaj użyte. Lub [użyj 'FLAG_SECURE'] (http://commonsware.com/blog/2012/01/16/secure-against-screenshots.html), aby po prostu zablokować wszystko (w przeciwieństwie do ekranu powitalnego). – CommonsWare
@CommonsWare, idealnie! Jeśli zamienisz to w odpowiedź, z przyjemnością to zaakceptuję. –