Suchen von UUIDs in Android 2.0

Ich schreibe ein Programm, das in Android 2.0 ausgeführt werden muss. Ich versuche gerade, mein Android-Gerät mit einem eingebetteten Bluetooth-Chip zu verbinden. Ich habe Informationen zur Verwendung von fetchuidsWithSDP () oder getUuids () erhalten, aber auf der gelesenen Seite wurde erklärt, dass diese Methoden im 2.0 SDK verborgen sind und mit Reflection aufgerufen werden müssen. Ich habe keine Ahnung, was das bedeutet und es gibt keine Erklärung. Es wird ein Beispielcode angegeben, der jedoch kaum eine Erklärung enthält. Ich hatte gehofft, jemand könnte mir helfen, zu verstehen, was hier tatsächlich vor sich geht, da ich für die Android-Entwicklung noch sehr neu bin.

String action = "android.bleutooth.device.action.UUID";
IntentFilter filter = new IntentFilter( action );
registerReceiver( mReceiver, filter );

Die Seite, die ich gelesen habe, sagt auch, dass Bluetooth in der ersten Zeile absichtlich "bleutooth" geschrieben ist. Wenn jemand das erklären kann, würde ich das begrüßen, da es für mich keinen Sinn ergibt, es sei denn, die Entwickler haben einen Tippfehler gemacht.

private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
@Override
public void onReceive( Context context, Intent intent ) {
    BluetoothDevice deviceExtra = intent.getParcelableExtra("android.bluetooth.device.extra.Device");
    Parcelable[] uuidExtra = intent.getParcelableArrayExtra("android.bluetooth.device.extra.UUID");
}

};

Ich habe Probleme zu verstehen, wie genau ich die richtige UUID für meinen eingebetteten Bluetooth-Chip finde. Wenn jemand helfen könnte, wäre es sehr dankbar.

BEARBEITEN: Ich werde den Rest meiner onCreate () -Methode hinzufügen, damit Sie sehen können, womit ich arbeite.

 public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // Set up window View
    setContentView(R.layout.main);

    // Initialize the button to scan for other devices.
    btnScanDevice = (Button) findViewById( R.id.scandevice );

    // Initialize the TextView which displays the current state of the bluetooth
    stateBluetooth = (TextView) findViewById( R.id.bluetoothstate );
    startBluetooth();

    // Initialize the ListView of the nearby bluetooth devices which are found.
    listDevicesFound = (ListView) findViewById( R.id.devicesfound );
    btArrayAdapter = new ArrayAdapter<String>( AndroidBluetooth.this,
            android.R.layout.simple_list_item_1 );
    listDevicesFound.setAdapter( btArrayAdapter );

    CheckBlueToothState();

    // Add an OnClickListener to the scan button.
    btnScanDevice.setOnClickListener( btnScanDeviceOnClickListener );

    // Register an ActionFound Receiver to the bluetooth device for ACTION_FOUND
    registerReceiver( ActionFoundReceiver, new IntentFilter( BluetoothDevice.ACTION_FOUND ) );

    // Add an item click listener to the ListView
    listDevicesFound.setOnItemClickListener( new OnItemClickListener()
    {
      public void onItemClick(AdapterView<?> arg0, View arg1,int arg2, long arg3) 
      {
          // Save the device the user chose.
          myBtDevice = btDevicesFound.get( arg2 );

          // Open a socket to connect to the device chosen.
          try {
              btSocket = myBtDevice.createRfcommSocketToServiceRecord( MY_UUID );
          } catch ( IOException e ) {
              Log.e( "Bluetooth Socket", "Bluetooth not available, or insufficient permissions" );
          } catch ( NullPointerException e ) {
              Log.e( "Bluetooth Socket", "Null Pointer One" );
          }

          // Cancel the discovery process to save battery.
          myBtAdapter.cancelDiscovery();

          // Update the current state of the Bluetooth.
          CheckBlueToothState();

          // Attempt to connect the socket to the bluetooth device.
          try {
              btSocket.connect();                 
              // Open I/O streams so the device can send/receive data.
              iStream = btSocket.getInputStream();
              oStream = btSocket.getOutputStream();
          } catch ( IOException e ) {
              Log.e( "Bluetooth Socket", "IO Exception" );
          } catch ( NullPointerException e ) {
              Log.e( "Bluetooth Socket", "Null Pointer Two" );
          }
      } 
  });
}

Antworten auf die Frage(2)

Ihre Antwort auf die Frage