Как узнать удалил ли пользователь приложение?

Для того чтобы узнать, удалил ли пользователь приложение на устройстве Android, вы можете использовать некоторые подходы и методы.

1. Используйте BroadcastReceiver для отслеживания действий установки и удаления приложения на устройстве. Вы можете создать свой собственный BroadcastReceiver, который будет слушать действия PACKAGE_ADDED и PACKAGE_REMOVED, и обрабатывать их события. Ниже приведен пример кода:

public class PackageChangeReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        String action = intent.getAction();
        String packageName = intent.getData().getSchemeSpecificPart();

        if (action.equals(Intent.ACTION_PACKAGE_ADDED)) {
            Log.d("PackageChangeReceiver", "Package installed: " + packageName);
        } else if (action.equals(Intent.ACTION_PACKAGE_REMOVED)) {
            Log.d("PackageChangeReceiver", "Package uninstalled: " + packageName);
        }
    }
}

Не забудьте добавить этот BroadcastReceiver в манифесте вашего приложения.

2. Используйте PackageManager для проверки установленных приложений на устройстве. Вы можете использовать метод getInstalledPackages() для получения списка всех установленных приложений. Затем вы можете проверить, есть ли нужное вам приложение в этом списке. Ниже приведен пример кода:

public boolean isAppInstalled(Context context, String packageName) {
    PackageManager packageManager = context.getPackageManager();
    List<PackageInfo> installedPackages = packageManager.getInstalledPackages(0);

    for (PackageInfo packageInfo : installedPackages) {
        if (packageInfo.packageName.equals(packageName)) {
            return true;
        }
    }

    return false;
}

3. Используйте Firebase Cloud Messaging (FCM) для отслеживания состояния установки и удаления приложения. FCM предоставляет возможность отправить сообщение на устройство пользователя, когда приложение устанавливается или удаляется. Для этого вам понадобится настроить интеграцию с FCM и отправлять уведомления клиентам приложения при изменениях в состоянии установки или удаления приложения на устройстве.

Важно отметить, что все эти методы имеют свои ограничения и не гарантируют на 100% определение того, удалил ли пользователь приложение или нет. Некоторые подходы могут быть ограничены политиками безопасности Android, а другие могут быть не очень точными или иметь использование ресурсов.

Надеюсь, что эти подходы помогут вам получить нужную информацию об установке или удалении приложения на устройстве Android.