2012-11-07 5 views
0

휴대 전화 주변에있는 모든 블루투스 지원 기기의 목록이있는 목록을 생성하고 싶습니다. 내가 가지고있는 코드는 페어링되지 않은 장치를 발견합니다. (그들은 근처로 떨어질 경우)이미 페어링 된 기기를 포함하는 영역에있는 모든 블루투스 기기를 감지합니다.

다음과 같이

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_bluetooth_connection); 

    final TextView tv=(TextView)findViewById(R.id.textView1); 
    BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); 


    final BroadcastReceiver mReceiver = new BroadcastReceiver() 
    { 
     @Override 
     public void onReceive(Context context, Intent intent) 
     { 
      String action = intent.getAction(); 
      // When discovery finds a device 
      if (BluetoothDevice.ACTION_FOUND.equals(action)) 
      { 
      // Get the BluetoothDevice object from the Intent 
      BluetoothDevice device = intent.getParcelableExtra(
      BluetoothDevice.EXTRA_DEVICE); 
      tv.append(device.getName() + "-"+ device.getAddress()+"\n"); 
      } 
     } 


    }; 
    String aDiscoverable = BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE; 
    startActivityForResult(new Intent(aDiscoverable),DISCOVERY_REQUEST); 
    IntentFilter filter = new IntentFilter(BluetoothDevice.ACTION_FOUND); 
    registerReceiver(mReceiver, filter); 
    mBluetoothAdapter.startDiscovery(); 
} 

이 하나가 나를 도울 수있는 주변의 모든 장치를 검색하는 코드를 또한 쌍으로 장치를 검색 할 수있는 방법이 있나요 쌍을 이루는 장치조차 발견하는 부호 추가에서. 나는이 테스트를하지 않은

답변

0
Set<BluetoothDevice> devices = adapter.getBondedDevices(); 
    for (BluetoothDevice device : devices) { 
     tv.append(device); 
    } 

감사합니다. 그것은 this tutorial입니다.

+0

위의 코드를 사용했을 때 아직 모든 장치가 아닌 페어링 된 장치 만 가져오고 있습니다 ...이 문제에 대한 더 깊은 통찰력을 줄 수 있습니까? –

관련 문제