CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: megthebest con ben 4 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: megthebest con ben 14 Thanks ricevuti negli ultimi sette giorni
Utente del mese: megthebest con ben 39 Thanks ricevuti nell'ultimo mese

Visualizzazione dei risultati da 1 a 3 su 3
Discussione:

[Problema] Listare dispositivi bluetooth

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Senior Droid L'avatar di cavaz


    Registrato dal
    Sep 2009
    Località
    Verona
    Messaggi
    306
    Smartphone
    Galaxy S4 I9505

    Ringraziamenti
    13
    Ringraziato 41 volte in 25 Posts
    Predefinito

    [Problema] Listare dispositivi bluetooth

    Ciao a tutti Androidiani!
    Sono di nuovo qua con uno dei miei tanti problemi di programmazione!

    Sto sviluppando un app che (per ora) mi scansiona i dispositivi bluetooth presenti nella zona e mi li visualizza a schermo. Stessa cosa deve farla con i dispositivi già associati con il terminale. Vi posto il codice e di seguito vi spiego i problemi che riscontro:
     
    1
    public class Bluetooth extends Activity {
    2
    3
        ArrayAdapter<String> mAA;
    4
        ListView lv;
    5
        private static final int REQUEST_ENABLE_BT = 1;
    6
    7
        @Override
    8
        protected void onCreate(Bundle savedInstanceState) {
    9
            // TODO Auto-generated method stub
    10
            super.onCreate(savedInstanceState);
    11
            setContentView(R.layout.bluetooth);
    12
            lv = (ListView) findViewById(R.id.lv);
    13
            mAA = new ArrayAdapter<String>(this, R.id.lv);
    14
            BluetoothAdapter mBA = BluetoothAdapter.getDefaultAdapter();
    15
            if (!mBA.isEnabled()) {
    16
                Intent enableBtIntent = new Intent(
    17
                        BluetoothAdapter.ACTION_REQUEST_ENABLE);
    18
                startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT);
    19
            }
    20
            Set<BluetoothDevice> pairedDevices = mBA.getBondedDevices();
    21
            // Se c'è un device già riconosciuto
    22
            if (pairedDevices.size() > 0) {
    23
                // Loop attraverso i device riconosciuti
    24
                for (BluetoothDevice device : pairedDevices) {
    25
                    // Aggiunge il nome e l'indirizzo in un ArrayAdapter da mostrare
    26
                    // in una ListView
    27
                    mAA.add(device.getName() + "\n" + device.getAddress());
    28
                    lv.setAdapter(mAA);
    29
    30
                }
    31
            }
    32
            final BroadcastReceiver mReceiver = new BroadcastReceiver() {
    33
    34
                public void onReceive(Context context, Intent intent) {
    35
                    // TODO Auto-generated method stub
    36
                    String action = intent.getAction();
    37
                    // quando si trovano alcuni device
    38
                    if (BluetoothDevice.ACTION_FOUND.equals(action)) {
    39
                        // Prelevare l'oggetto "dispositivo bluetooth" dall'Intent
    40
                        BluetoothDevice device = intent
    41
                                .getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
    42
                        // Aggiungere il nome e lìindirizzo in un arrayadapter da
    43
                        // mostrare in una ListView;
    44
                        mAA.add(device.getName() + "\n" + device.getAddress());
    45
                    }
    46
    47
                }
    48
    49
            };
    50
            IntentFilter filter = new IntentFilter(BluetoothDevice.ACTION_FOUND);
    51
            registerReceiver(mReceiver, filter);
    52
            mBA.cancelDiscovery();
    53
            lv.setAdapter(mAA);
    54
        }
    55
    }
    56


    1) Se avvio l'applicazione con bluetooth spento, mi compare il mitico alert che mi chiede se voglio attivare il bluetooth. Confermo la richiesta, compare l'alert di attivazione del bluetooth e successivamente... Schermata Nera. Teoricamente dovrebbe saltarmi fuori un dispositivo associato (in questo caso, il mio portatile) ma la schermata rimane costantemente nera (per nera si intende che sono visibili la barra del nome dell'app e la barra di stato di android. Il telefono non va in Freeze)

    2) Se avvio l'applicazione con bluetooth acceso, invece, l'app va in crash ed esce. Qualche suggerimento a riguardo?

    Precisazioni:
    - Nel manifest ho messo la stringa <uses-permission android:name="android.permission.BLUETOOTH" />
    - Layout XML:
    14
     
    1
    <?xml version="1.0" encoding="utf-8"?>
    2
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    3
        android:layout_width="match_parent"
    4
        android:layout_height="match_parent"
    5
        android:orientation="vertical" >
    6
    7
        <ListView
    8
            android:id="@+id/lv"
    9
            android:layout_width="wrap_content"
    10
            android:layout_height="wrap_content"
    11
            android:text="TextView" >
    12
            
    13
        </ListView>
    14
    </LinearLayout>


    Grazie in anticipo per l'aiuto

  2.  
  3. #2
    Senior Droid L'avatar di frank17next


    Registrato dal
    Jan 2010
    Località
    Campobasso
    Messaggi
    739
    Smartphone
    GNexus, Galaxy Note, GT 10.1

    Ringraziamenti
    16
    Ringraziato 143 volte in 102 Posts
    Predefinito

    Puoi postare anche il logcat di entrambi i casi?

    Grazie
    Nexus 6 - 5.0.1 Stock
    Nexus 5 - 5.0.1 Stock + Root
    Galaxy Note 3 GT-N9005 - 4.4.4 Stock + Root
    Galaxy Tab 10.1 Slim P7500 - [JB] CyanogenMod 10 4.1.2 Pershoot (Nightly 20121013)
    ------------------------------------------------------------------------
    https://sites.google.com/site/frank17next/

  4. #3
    Senior Droid L'avatar di cavaz


    Registrato dal
    Sep 2009
    Località
    Verona
    Messaggi
    306
    Smartphone
    Galaxy S4 I9505

    Ringraziamenti
    13
    Ringraziato 41 volte in 25 Posts
    Predefinito

    Problema "risolto" copiando dall'esempio di Google della Chat Bluetooth.
    Grazie comunque

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy