Come gestire il gestore obsoleto in Android [duplicato]
Aug 21 2020
In precedenza questo codice funzionava perfettamente.
Ora sta mostrando android.os.handler è deprecato.
private final Handler mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case MESSAGE_STATE_CHANGE:
break;
}
}
Come possiamo risolvere questo problema.
Risposte
10 AlphaOne Aug 21 2020 at 06:31
Come accennato da Mike nei commenti, Handler
non è deprecato. Il modo di creare un oggetto di Handler utilizzando new Handler()
è deprecato.
Secondo la documentazione, l'utilizzo new Handler()
può portare a bug. Quindi dovresti specificare esplicitamente un looper per il gestore. Looper non deve essere nullo.
Fare riferimento al codice:
private final Handler mHandler = new Handler(Looper.getMainLooper()) {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case MESSAGE_STATE_CHANGE:
break;
}
}