Get intent of uninstall app in android

前端 未结 3 1464
情书的邮戳
情书的邮戳 2021-01-03 06:25

I just want to know about intent of uninstall app because of

in my app when user opens the first screen then the device id will be saved in server side by using php.

相关标签:
3条回答
  • 2021-01-03 06:57

    You can detect uninstall pop up of any app(including your own app) using Accessibility Service.

    public class MyService extends AccessibilityService {
    
    @Override
    public void onCreate() {
        super.onCreate();
    }
    
    @Override
    public void onAccessibilityEvent(AccessibilityEvent event) {
    
        if (event.getEventType() == AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED) {
    
            if(event.getText().equalsIgnoreCase("check for content in popup which is in screenshot"){
    
            /**Do your task*/
            }
        }
    }
    
    @Override
    public void onInterrupt() {
    }
    
    @Override
    protected void onServiceConnected() {
        super.onServiceConnected();
        AccessibilityServiceInfo info = new AccessibilityServiceInfo();
        info.flags = AccessibilityServiceInfo.DEFAULT;
        info.packageNames = new String[]{"com.android.packageinstaller"};
        info.eventTypes = AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED | AccessibilityEvent.TYPE_WINDOW_CONTENT_CHANGED;
        info.feedbackType = AccessibilityServiceInfo.FEEDBACK_GENERIC;
        setServiceInfo(info);
    }
    

    here in onServiceConnected, [![com.android.packageinstaller][1]][1] represents the install/uninstall app package name(this is system app and it doesn't have any UI so it will not shown to users.).

    0 讨论(0)
  • 2021-01-03 06:57
    <receiver android:name=".MyReceiver">
    <intent-filter android:priority="999"> 
        <action android:name="android.intent.action.PACKAGE_REMOVED"/>
        <data android:scheme="package"/> 
    </intent-filter>
    </receiver>
    

    test in Android 4.0 and its works fine

    0 讨论(0)
  • 2021-01-03 07:17

    You cannot get the uninstall intent for your own app. See this thread for more - Get application uninstall event in android

    0 讨论(0)
提交回复
热议问题