我是Android开发的初学者,我开发了这个应用程序,其中我必须连接我的Android设备将扫描并仅与那些使用此应用程序的设备连接。并在我的扫描设备上显示他们的名字作为列表。 直到现在我已经以某种方式编写了扫描代码,观看了一些教程,但无法编写广播代码。
另外,我想要从广播设备广播一些东西,例如它在此应用程序上登录的名称和AppID,看看它是否使用相同的应用程序。可以这样做吗?
这是扫描码。
final Context context = v.getContext();
final View vi = v;
BluetoothManager btManager = (BluetoothManager)v.getContext().getSystemService(Context.BLUETOOTH_SERVICE);
BluetoothAdapter btAdapter = btManager.getAdapter();
if (btAdapter != null && !btAdapter.isEnabled()) {
Intent enableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
startActivityForResult(enableIntent,1);
}
BluetoothAdapter.LeScanCallback leScanCallback = new BluetoothAdapter.LeScanCallback() {
@Override
public void onLeScan(final BluetoothDevice device, final int rssi, final byte[] scanRecord) {
devicefound = device;
UUID = device.getAddress().toString();
devices = new ArrayAdapter<String>( context , R.layout.device_name);
ListView pairedListView = (ListView) vi.findViewById(R.id.textView3);
pairedListView.setAdapter(devices);
devices.add(devicefound.getName());
}
};
madapter.startLeScan(leScanCallback);
final BluetoothGattCallback btleGattCallback = new BluetoothGattCallback() {
@Override
public void onCharacteristicRead(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic, int status) {
}
@Override
public void onConnectionStateChange(final BluetoothGatt gatt, final int status, final int newState) {
// this will get called when a device connects or disconnects
}
@Override
public void onServicesDiscovered(final BluetoothGatt gatt, final int status) {
// this will get called after the client initiates a BluetoothGatt.discoverServices() call
}
};
任何形式的帮助都会得到满足。提前谢谢。