Como cancelar um StreamSubscription no dispose para evitar um crash setState-após-dispose no Flutter
Um stream continua emitindo depois que o usuário sai da tela, seu onData chama setState em um State já destruído, e o Flutter lança uma exceção. Guarde a subscription, cancele-a no dispose antes de super.dispose, e o callback nunca poderá disparar em um widget morto. O padrão completo para Flutter 3.44.