Come gestire un monitoraggio del sensore durante la modifica dell'orientamento dello schermo?

StackOverflow https://stackoverflow.com/questions/8956198

  •  12-11-2019
  •  | 
  •  

Domanda

Nella mia attività, monitoro un sensore, con il metodo "onsensorchantato".

Inizio a monitorare il sensore quando viene premuto un pulsante in quell'attività (nel metodo "OnClick").

Registro e annullano l'ascolto nei metodi OnPause e OnResume.

Ecco il codice:

public void onCreate(Bundle savedInstanceState) {
  //Here i set "mySensor"
}

public void onClick(View view){
  sensorManager.registerListener(this, mySensor, SensorManager.SENSOR_DELAY_FASTEST);
}

protected void onPause() {
  sensorManager.unregisterListener(this, mySensor);
}

protected void onResume() {
  sensorManager.registerListener(this, mySensor, SensorManager.SENSOR_DELAY_FASTEST);
}

public final void onSensorChanged(SensorEvent event) {
  //do things
}

Il problema è che, quando c'è una modifica dell'orientamento dello schermo, il monitoraggio si interrompe, le cose che faccio all'interno di "onsensorchanged" si fermano fino a quando non premo di nuovo il pulsante.

Ho letto e sembra che quando l'orientamento dello schermo cambia, la mia attività viene distrutta e ricreata, ma vorrei che il monitoraggio del sensore non si fermasse durante quel processo.

Come posso mantenere il monitoraggio? Penso che debba essere fatto usando il pacchetto, ma non sono sicuro.

Grazie.

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top