2012-02-29 21 views

Respuesta

0

no hay ningún evento para realizar un seguimiento de fábrica restablecer

4

viejo tema, pero tal vez ayude a alguien.

No hay ningún evento oficial que indique que se realizará el Restablecimiento de datos de fábrica. Sin embargo, para Android < = 22 (Lollipop) no existe intención de difusión (oculta en el código) android.intent.action.MASTER_CLEAR que se activa cuando se formatea el almacenamiento externo. Si hace clic en Restablecer valores de fábrica para la configuración de Android, se activa el intento MASTER_CLEAR, en el resultado puede indicar que habrá un restablecimiento de fábrica.

Código de ejemplo:

// Class Member 
private BroadcastReceiver receiver; 
. 
. 
. 

// In some method, e.g. onCreate() 
IntentFilter filter = new IntentFilter(); 
filter.addAction("android.intent.action.ACTION_SHUTDOWN"); 
filter.addAction("android.intent.action.MASTER_CLEAR"); 

receiver = new BroadcastReceiver() { 
     @Override 
     public void onReceive(Context context, Intent intent) { 
      if (intent.getAction().equals(
        Intent.ACTION_SHUTDOWN)) { 
       Log.d(TAG, "SHUTDOWN") 
      } 

      if (intent.getAction().equals("android.intent.action.MASTER_CLEAR")) { 
       Log.d(TAG, "FACTORY DATA RESET") 
      } 
     }; 

registerReceiver(receiver, filter); 

Si habrá restablecimiento de fábrica entonces verán acción MASTER_CLEAR seguido por acción de apagado. Probé en Nexus 5 and android 4.4.4, 5.0, 6.0, 6.0.1 y funciona.

Cuestiones relacionadas