Bonjour tout le monde;

bon avant de dire mon probleme voici mon code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
package com.bleutouthteste.firstteste.teste;
 
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
import android.widget.Toast;
 
import java.util.HashMap;
import java.util.Set;
 
public class ConnectActivity extends AppCompatActivity implements View.OnClickListener {
 
    ListView maListViewPerso;
    Button btn4;
    //On déclare la HashMap qui contiendra les informations pour un item
    HashMap<String, String> map;
    private Set<BluetoothDevice> devices;
 
    BluetoothAdapter bluetoothAdapter;
    ArrayAdapter<String> btArrayAdapter;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_connect);
 
        bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
        devices = bluetoothAdapter.getBondedDevices();
 
        btn4 = (Button)this.findViewById(R.id.button4);
 
        btn4.setOnClickListener(this);
 
        maListViewPerso = (ListView)findViewById(R.id.listView01);
 
        btArrayAdapter = new ArrayAdapter<String>(this, R.layout.affichageitem);
        maListViewPerso.setAdapter(btArrayAdapter);
 
    }
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_connect, menu);
        return true;
    }
 
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
 
        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }
 
        return super.onOptionsItemSelected(item);
    }
 
    private final BroadcastReceiver bluetoothReceiver = new BroadcastReceiver() {
        public void onReceive(Context context, Intent intent) {
            String action = intent.getAction();
            if (BluetoothDevice.ACTION_FOUND.equals(action)) {
                BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
                Toast.makeText(ConnectActivity.this, "New Device = " + device.getName(), Toast.LENGTH_SHORT).show();
 
            }
        }
    };
 
    @Override
    public void onClick(View v) {
        if(v.getId() == R.id.button4)
        {
            btArrayAdapter.clear();
            bluetoothAdapter.startDiscovery();
            Toast.makeText(ConnectActivity.this, "Scanning Devices", Toast.LENGTH_LONG).show();
            IntentFilter filter = new IntentFilter(BluetoothDevice.ACTION_FOUND);
            registerReceiver(bluetoothReceiver, filter);
            registerReceiver(bluetoothReceiver, new IntentFilter(BluetoothDevice.ACTION_FOUND));
        }
    }
 
}

je suis ce tuto: http://sberfini.developpez.com/tutor...oid/bluetooth/

le code marche bien, sauf que quand je veux inserer les donnees dans ma listview, je ne sais pas si j'ai mal formulé le code de la liste adapteur mais l'application s'arrete quand j'ajoute ces deux lignes:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
                btArrayAdapter.add(device.getName() + "\n" + device.getAddress());
                btArrayAdapter.notifyDataSetChanged();
donc je pense qu'il y'a un probleme au niveau arrayadapter ??? en tout cas j'ai pas reussi à resoudre ce probleme et je viens vers vous.

merci d'avance