Autore Topic: Problema Hendler  (Letto 378 volte)

Offline Raffyna

  • Utente junior
  • **
  • Post: 104
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    htc wildfire
  • Sistema operativo:
    seven
Problema Hendler
« il: 23 Gennaio 2015, 11:53:09 CET »
0
Salve ragazzi,
ho un problema. Ho realizzato un'applicazione che tramite il bluetooth riceve dei messaggi creando quindi una chat bluetooth.

   // The Handler that gets information back from the BluetoothChatService
    private final Handler mHandler = new Handler() {
    @Override
        public void handleMessage(Message msg) {
                    switch (msg.what) {
                                   ...
                                  case MESSAGE_READ:
               
                byte[] readBuf = null;
                readBuf = (byte[]) msg.obj;
               String readMessage = new String(readBuf, 0, msg.arg1);


                                  ...
}

Ho due problemi :
1. ogni volta che mi arriva un nuovo messaggio il buffer [msj.obj]  viene sovrascritto, io vorrei che questo dopo l'operazione di readMesssage fosse svuotato, come potrei fare?
2. la stringa String readMessage = new String(readBuf, 0, msg.arg1); a volte mi legge tutto il contenuto del buffer altre volte solo i primi caratteri, quale potrebbe essere il problema?
Grazie

Offline Semola

  • Utente junior
  • **
  • Post: 55
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Huawei Nexus 6P
  • Sistema operativo:
    Ubuntu 13.04 on Dell XPS 14
Re:Problema Hendler
« Risposta #1 il: 26 Gennaio 2015, 16:14:22 CET »
0
parlo da profano, ma, molto semplicemente, dopo che hai letto msg.obj non puoi svuotarlo tu con un semplice
Codice: [Seleziona]
msg.obj = null;