Dans le code source de Handler.java
, je traverse en dessous de segment de codeFIND_POTENTIAL_LEAKS Android de gestionnaire
public Handler(Callback callback, boolean async) {
if (FIND_POTENTIAL_LEAKS) {
final Class<? extends Handler> klass = getClass();
if ((klass.isAnonymousClass() || klass.isMemberClass() || klass.isLocalClass()) &&
(klass.getModifiers() & Modifier.STATIC) == 0) {
Log.w(TAG, "The following Handler class should be static or leaks might occur: " +
klass.getCanonicalName());
}
}
}
De code, je peux voir FIND_POTENTIAL_LEAKS
est utilisé pour trouver leaks.However potentiel le dépôt est private
et toujours false
.
Alors, quand sera-t-il vraiment utilisé?
EDIT
De Murat, la réflexion semble fonctionner, mais pourquoi Android
définir la valeur par défaut true
?
Je suppose que oui.Mais il semble stupide, LOL. – JianxinLi
Tout ce que vous ne comprenez pas n'est pas stupide. – Ridcully
Alors, pourquoi pas par défaut 'true'? @Ridcully – JianxinLi