Jak aplikacja może wykryć, że zostanie odinstalowana? [duplikować

To pytanie ma już odpowiedź tutaj:

Czy można wykryć odinstalowanie aplikacji na Androida? 7 odpowiedzi Wykonaj zadanie podczas odinstalowywania w Androidzie [duplikat] 4 odpowiedzi

Wiemy, że zwykła (w praktyce dowolna) aplikacja antywirusowa przed dezinstalacją służyła do uruchomienia prostego okna dialogowego: „Czy odinstalujesz aplikację, jesteś pewien?” - "tak nie"

Tak, wiem, że mogę przechwycić zamiar usunięcia pakietu za pomocą filtru zamiaru, takiego jak:

<activity
    android:name=".UninstallIntentActivity"
    android:label="@string/app_name" >
    <intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <action android:name="android.intent.action.DELETE" />
        <category android:name="android.intent.category.DEFAULT" />
        <data android:scheme="package"  />
    </intent-filter>
</activity>

Ale problem polega po prostu na tym, że przechwytujekażd usuń żądania, a ponadto uruchomi się okno wyboru między moją aplikacją a instalatorem giełdowym. Więc jeśli użytkownik wybierze instalatora zapasowego - nie będę mógł nic zrobić.

Moim celem nie jest uniemożliwienie użytkownikom odinstalowania mojej aplikacji, ale po prostu cofnięcie zmian dokonanych przez moją aplikację.

Uczenie się z tych aplikacji antywirusowych Widzę, że taka operacja jest możliwa, więc pomóż mi i wyjaśnij, jak to możliwe?

Aktualizacj

Ponieważ są ludzie, którzy nie wierzą, że to prawda - odsyłam doAvast Mobile Security:

Anti-Theft chroni się przed odinstalowaniem, ukrywając swoje komponenty za pomocą różnych technik samozachowawczych.

Inny przykład: Kaspersky Internet Security dla Androida - oto specjalna procedura odinstalowania go, co wymaga podania tajnego kodu.

W każdym razie oznacza to, że istnieje sposób na przechwycenie procedury dezinstalacji w celu zapobieżenia odinstalowaniu lub wykonania zadania finalizującego.

questionAnswers(4)

yourAnswerToTheQuestion