2010-06-10 7 views
25

He desarrollado una aplicación para Android. Ahora quiero realizar algunas operaciones (es decir, reiniciar las configuraciones, etc.) en el momento en que la aplicación se desinstala del teléfono.Realice una tarea al desinstalar en android

¿Es posible volver a generar un oyente o una función que se llama en el momento en que se elimina la aplicación?

+1

La aplicación 'NQ Mobile Security' está llamando a una Actividad en la vista de desinstalación en la http://i.imgur.com/Fos9N.png, http://i.imgur.com/fIZbK.png, http : //i.imgur.com/cG9Hr.png y la pregunta http://stackoverflow.com/questions/10219328/how-to-show-an-activity-before-my-app-is-uninstalled-android –

+0

nice pregunta .. –

+0

Compruebe mi respuesta en: http://stackoverflow.com/questions/5132472/can-code-be-called-when-my-android-application-is-uninstalled/28209337#28209337 esto te ayudará –

Respuesta

16

Lamentablemente, Android por el momento no le da la posibilidad de realizar el código en el momento en que se desinstala la aplicación.

Todos los ajustes que se establecen a través de las Preferencias Compartidas se eliminan junto con todo lo que se encuentra en los Datos de la Aplicación una carpeta de Caché.

Lo único que persistirá es la información que se escribe en la tarjeta SD y cualquier cambio en la configuración del teléfono que se realice. No sé qué sucede con los datos que se sincronizan con los contactos a través de su aplicación.

+7

No creo que sea triste. De hecho, estoy eufórico porque ayuda a evitar la actividad similar al spyware en mi teléfono. –

+4

Pero también me impide limpiar ciertas cosas como los datos que descargué en la tarjeta SD para evitar que la memoria del teléfono se llene. No, llené la tarjeta SD. Tal vez esto mejore con la aplicación para SD en froyo pero para dispositivos menores de 2.2 Me gustaría ser tan educado en una desinstalación. – Janusz

+7

@Janusz: Eche un vistazo a 'getExternalStorageDirectory()' en la clase 'android.os.Environment'. El doc en línea dice que ha estado allí desde el nivel 1 de API, pero no lo recuerdo. De todos modos, se supone que debe proporcionarle un directorio específico de la aplicación en la tarjeta SD que se limpiará cuando la aplicación se desinstale. – CommonsWare

6

No puede obtener el control cuando se desinstala su aplicación, ¡lo siento!

+1

gracias, configuré el receptor para android.intent.action.PACKAG E_REMOVED y llamó cuando cualquier aplicación se desinstala ahora ¿cómo puedo obtener el nombre del paquete que se ha eliminado en este receptor? – dhaiwat

+0

Si no es posible, ¿cómo Firebase Analytics proporciona eventos app_remove automáticamente? –

+2

@OfekRon: no publique comentarios duplicados en varias respuestas. No uso Firebase, y no sé qué son los "eventos app_remove". Sin embargo, * otras aplicaciones * en el dispositivo pueden descubrir que su aplicación fue desinstalada. Por lo tanto, supongo que la aplicación Play Services Framework, Play Store o alguna otra parte del código propietario de Google es la que detecta la desinstalación y reenvía esa información a los servidores de Google. – CommonsWare

-3

Cuando desinstalación usuario de la aplicación Android en su móvil el receptor PACKAGE_REMOVED llamará. Puede obtener la desinstalación del nombre del paquete de la aplicación. Intent, getDataString()

if (intent.getAction(). equals ("android.intent.action.PACKAGE_REMOVED")) { 
      String packageName = intent.getDataString(); 
      System.out.println ("uninstall:" + packageName + "package name of the program"); 
} 

Vea el ejemplo completo en este enlace. http://foryouneed.blogspot.in/2014/08/android-listener-application-to-install.html

+2

La aplicación que se desinstala no recibirá esta intención, de docs: "El paquete que se está instalando no recibe esta intención". http://developer.android.com/reference/android/content/Intent.html#ACTION_PACKAGE_REMOVED – Anastasia

Cuestiones relacionadas