TIL:앱 삭제 이벤트 캐치

안드로이드 앱에서 앱이 삭제 되는 것을 ACTION_PACKAGE_REMOVED를 이용하여 감지할 수 있다.

다만 사용자가 삭제를 하는 패키지에서는 해당 인텐트를 전달 받지 못한다.

Receiver 정의

<receiver android:name="리시버 명">
    <intent-filter>
        <action android:name="android.intent.action.PACKAGE_REMOVED"/>
        <data android:scheme="package" />
    </intent-filter>
</receiver>
public class UninstallReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        String data = intent.getDataString();
        Logger.d("tag", "intent data result : " + data);
    }
}

위의 리시버를 통해서 앱 삭제 이벤트를 캐치하고 삭제하는 패키지 이름을 알 수 있게 된다.


Reference