android.bluetooth.BluetoothAdapter#getBondedDevices ( )源码实例Demo

下面列出了android.bluetooth.BluetoothAdapter#getBondedDevices ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: Conversations   文件: AppRTCBluetoothManager.java
/**
 * Logs the state of the local Bluetooth adapter.
 */
@SuppressLint("HardwareIds")
protected void logBluetoothAdapterInfo(BluetoothAdapter localAdapter) {
    Log.d(Config.LOGTAG, "BluetoothAdapter: "
            + "enabled=" + localAdapter.isEnabled() + ", "
            + "state=" + stateToString(localAdapter.getState()) + ", "
            + "name=" + localAdapter.getName() + ", "
            + "address=" + localAdapter.getAddress());
    // Log the set of BluetoothDevice objects that are bonded (paired) to the local adapter.
    Set<BluetoothDevice> pairedDevices = localAdapter.getBondedDevices();
    if (!pairedDevices.isEmpty()) {
        Log.d(Config.LOGTAG, "paired devices:");
        for (BluetoothDevice device : pairedDevices) {
            Log.d(Config.LOGTAG, " name=" + device.getName() + ", address=" + device.getAddress());
        }
    }
}
 
源代码2 项目: Aerlink-for-Android   文件: BluetoothUtils.java
public static BluetoothDevice getBondedDevice(BluetoothAdapter bluetoothAdapter) {
    BluetoothDevice bondedDevice = null;

    if (bluetoothAdapter != null) {
        try {
            Set<BluetoothDevice> devices = bluetoothAdapter.getBondedDevices();
            if (devices != null) {
                for (BluetoothDevice device : devices) {
                    String deviceName = device.getName();
                    if (deviceName != null && (deviceName.equals("Aerlink") || deviceName.equals("BLE Utility") || deviceName.equals("Blank"))) {
                        bondedDevice = device;
                        break;
                    }
                }
            }
        }
        catch (Exception e) {
            e.printStackTrace();
        }
    }

    return bondedDevice;
}
 
protected void getBTSocketForSelectedPump() {
    mDevName = SP.getString(MainApp.gs(R.string.key_danar_bt_name), "");
    BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();

    if (bluetoothAdapter != null) {
        Set<BluetoothDevice> bondedDevices = bluetoothAdapter.getBondedDevices();

        for (BluetoothDevice device : bondedDevices) {
            if (mDevName.equals(device.getName())) {
                mBTDevice = device;
                try {
                    mRfcommSocket = mBTDevice.createRfcommSocketToServiceRecord(SPP_UUID);
                } catch (IOException e) {
                    log.error("Error creating socket: ", e);
                }
                break;
            }
        }
    } else {
        ToastUtils.showToastInUiThread(MainApp.instance().getApplicationContext(), MainApp.gs(R.string.nobtadapter));
    }
    if (mBTDevice == null) {
        ToastUtils.showToastInUiThread(MainApp.instance().getApplicationContext(), MainApp.gs(R.string.devicenotfound));
    }
}
 
源代码4 项目: sdl_java_suite   文件: SdlRouterService.java
/**
    * This function looks through the phones currently paired bluetooth devices
    * If one of the devices' names contain "sync", or livio it will attempt to connect the RFCOMM
    * And start SDL
    * @return a boolean if a connection was attempted
    */
 @SuppressWarnings({"MissingPermission", "unused"})
public synchronized boolean bluetoothQuerryAndConnect(){
	BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
	if(adapter != null && adapter.isEnabled()){
		Set<BluetoothDevice> pairedBT= adapter.getBondedDevices();
       	Log.d(TAG, "Query Bluetooth paired devices");
       	if (pairedBT.size() > 0) {
           	for (BluetoothDevice device : pairedBT) {
           		String name = device.getName().toLowerCase(Locale.US);
           		if(name.contains("sync") || name.contains("livio")){
           			bluetoothConnect(device);
					return true;
               	}
           	}
      		}
	}else{
		Log.e(TAG, "There was an issue with connecting as client");
	}
	 return false;
 }
 
源代码5 项目: microbit   文件: PairingActivity.java
/**
 * Finds all bonded devices and tries to unbond it.
 */
private void unPairDevice() {
    ConnectedDevice connectedDevice = BluetoothUtils.getPairedMicrobit(this);
    String addressToDelete = connectedDevice.mAddress;
    // Get the paired devices and put them in a Set
    BluetoothAdapter mBluetoothAdapter = ((BluetoothManager) getSystemService(BLUETOOTH_SERVICE)).getAdapter();
    Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
    for(BluetoothDevice bt : pairedDevices) {
        logi("Paired device " + bt.getName());
        if(bt.getAddress().equals(addressToDelete)) {
            try {
                Method m = bt.getClass().getMethod("removeBond", (Class[]) null);
                m.invoke(bt, (Object[]) null);
            } catch(NoSuchMethodException | IllegalAccessException
                    | InvocationTargetException e) {
                Log.e(TAG, e.toString());
            }
        }
    }
}
 
源代码6 项目: microbit   文件: BluetoothUtils.java
public static BluetoothDevice getPairedDeviceMicroBit(Context context) {
    SharedPreferences pairedDevicePref = context.getApplicationContext().getSharedPreferences(PREFERENCES_KEY,
            Context.MODE_MULTI_PROCESS);
    if(pairedDevicePref.contains(PREFERENCES_PAIREDDEV_KEY)) {
        String pairedDeviceString = pairedDevicePref.getString(PREFERENCES_PAIREDDEV_KEY, null);
        Gson gson = new Gson();
        sConnectedDevice = gson.fromJson(pairedDeviceString, ConnectedDevice.class);
        //Check if the microbit is still paired with our mobile
        BluetoothAdapter mBluetoothAdapter = ((BluetoothManager) MBApp.getApp().getSystemService(Context
                .BLUETOOTH_SERVICE)).getAdapter();
        if(mBluetoothAdapter.isEnabled()) {
            Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
            for(BluetoothDevice bt : pairedDevices) {
                if(bt.getAddress().equals(sConnectedDevice.mAddress)) {
                    return bt;
                }
            }
        }
    }
    return null;
}
 
源代码7 项目: Mi_Band_SDK   文件: Miband.java
/**
 * Miband 디바이스 찾기, Mi fit 앱에서 먼저 bonded 된 Device를 찾는다.
 *
 * @param mBluetoothAdapter
 * @param callback
 */
public void searchDevice(final BluetoothAdapter mBluetoothAdapter, final MibandCallback callback) {
    this.mibandIO.setStatus(MibandCallback.STATUS_SEARCH_DEVICE);
    Set<BluetoothDevice> pairDevices = mBluetoothAdapter.getBondedDevices();
    BluetoothDevice mibandDevice = null;
    if (pairDevices.size() > 0) {
        for (BluetoothDevice device : pairDevices) {
            String deviceMac = device.getAddress().substring(0, 8);
            if (MibandUUID.MAC_FILTER_MI1S.equals(deviceMac)) {
                mibandDevice = device;
                break;
            }
        }
    }
    if (mibandDevice == null)
        callback.onFail(-1, "실패", MibandCallback.STATUS_SEARCH_DEVICE);
    else
        callback.onSuccess(mibandDevice, MibandCallback.STATUS_SEARCH_DEVICE);
}
 
源代码8 项目: rpi3-wifi-conf-android   文件: MainActivity.java
private void refreshDevices() {
    adapter_devices = new DeviceAdapter(this, R.layout.spinner_devices, new ArrayList<BluetoothDevice>());
    devicesSpinner.setAdapter(adapter_devices);

    BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();

    if (!mBluetoothAdapter.isEnabled()) {
        Intent enableBluetooth = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
        startActivityForResult(enableBluetooth, 0);
    }

    Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
    if (pairedDevices.size() > 0) {
        for (BluetoothDevice device : pairedDevices) {
            adapter_devices.add(device);
        }
    }
}
 
源代码9 项目: Easer   文件: BTDeviceSkillViewFragment.java
@Nullable
private String resolveHWAddress(String hwaddress) {
    BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
    if (bluetoothAdapter != null) {
        for (BluetoothDevice btDevice : bluetoothAdapter.getBondedDevices()) {
            if (btDevice.getAddress().equals(hwaddress)) {
                return btDevice.getName();
            }
        }
    }
    return null;
}
 
源代码10 项目: MobileInfo   文件: BluetoothInfo.java
@SuppressLint("MissingPermission")
static JSONObject getMobBluetooth(Context context) {
    BluetoothBean bluetoothBean = new BluetoothBean();
    try {
        bluetoothBean.setBluetoothAddress(Settings.Secure.getString(context.getContentResolver(), "bluetooth_address"));
        BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
        if (bluetoothAdapter == null) {
            return bluetoothBean.toJSONObject();
        }
        bluetoothBean.setEnabled(bluetoothAdapter.isEnabled());
        bluetoothBean.setPhoneName(bluetoothAdapter.getName());
        Set<BluetoothDevice> pairedDevices = bluetoothAdapter.getBondedDevices();
        List<JSONObject> list = new ArrayList<>();
        if (pairedDevices.size() > 0) {
            for (BluetoothDevice device : pairedDevices) {
                BluetoothBean.DeviceBean deviceBean = new BluetoothBean.DeviceBean();
                deviceBean.setAddress(device.getAddress());
                deviceBean.setName(device.getName());
                list.add(deviceBean.toJSONObject());
            }
        }
        bluetoothBean.setDevice(list);
    } catch (Exception e) {
        Log.e(TAG, e.toString());
    }
    return bluetoothBean.toJSONObject();
}
 
源代码11 项目: Arduino-Android-Bluetooth   文件: Bluetooth.java
public void connectDevice(String deviceName) {
    // Get the device MAC address
    String address = null;
    BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
    for(BluetoothDevice d: adapter.getBondedDevices()){
        if (d.getName().equals(deviceName)) address = d.getAddress();
    }

    try {
        BluetoothDevice device = adapter.getRemoteDevice(address); // Get the BluetoothDevice object
        this.connect(device); // Attempt to connect to the device
    } catch (Exception e){
        Log.e("Unable to connect to device address "+ address,e.getMessage());
    }
}
 
源代码12 项目: microbit   文件: BluetoothUtils.java
public static int getTotalPairedMicroBitsFromSystem() {
    int totalPairedMicroBits = 0;
    BluetoothAdapter mBluetoothAdapter = ((BluetoothManager) MBApp.getApp().getSystemService(Context
            .BLUETOOTH_SERVICE)).getAdapter();
    if(mBluetoothAdapter != null && !mBluetoothAdapter.isEnabled()) {
        Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
        for(BluetoothDevice bt : pairedDevices) {
            if(bt.getName().contains("micro:bit")) {
                ++totalPairedMicroBits;
            }
        }
    }
    return totalPairedMicroBits;
}
 
源代码13 项目: microbit   文件: BluetoothUtils.java
public static ConnectedDevice getPairedMicrobit(Context ctx) {
    SharedPreferences pairedDevicePref = ctx.getApplicationContext().getSharedPreferences(PREFERENCES_KEY,
            Context.MODE_MULTI_PROCESS);

    if(sConnectedDevice == null) {
        sConnectedDevice = new ConnectedDevice();
    }

    if(pairedDevicePref.contains(PREFERENCES_PAIREDDEV_KEY)) {
        boolean pairedMicrobitInSystemList = false;
        String pairedDeviceString = pairedDevicePref.getString(PREFERENCES_PAIREDDEV_KEY, null);
        Gson gson = new Gson();
        sConnectedDevice = gson.fromJson(pairedDeviceString, ConnectedDevice.class);
        //Check if the microbit is still paired with our mobile
        BluetoothAdapter mBluetoothAdapter = ((BluetoothManager) MBApp.getApp().getSystemService(Context
                .BLUETOOTH_SERVICE)).getAdapter();
        if(mBluetoothAdapter.isEnabled()) {
            Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
            for(BluetoothDevice bt : pairedDevices) {
                if(bt.getAddress().equals(sConnectedDevice.mAddress)) {
                    pairedMicrobitInSystemList = true;
                    break;
                }
            }
        } else {
            //Do not change the list until the Bluetooth is back ON again
            pairedMicrobitInSystemList = true;
        }

        if(!pairedMicrobitInSystemList) {
            Log.e("BluetoothUtils", "The last paired microbit is no longer in the system list. Hence removing it");
            //Return a NULL device & update preferences
            sConnectedDevice.mPattern = null;
            sConnectedDevice.mName = null;
            sConnectedDevice.mStatus = false;
            sConnectedDevice.mAddress = null;
            sConnectedDevice.mPairingCode = 0;
            sConnectedDevice.mfirmware_version = null;
            sConnectedDevice.mlast_connection_time = 0;

            setPairedMicroBit(ctx, null);
        }
    } else {
        sConnectedDevice.mPattern = null;
        sConnectedDevice.mName = null;
    }
    return sConnectedDevice;
}
 
源代码14 项目: an2linuxclient   文件: BluetoothPairedListDialog.java
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    getDialog().requestWindowFeature(Window.FEATURE_NO_TITLE);

    View view = inflater.inflate(R.layout.view_add_bluetooth_server, container);

    ListView listViewBtPairedPCs = (ListView) view.findViewById(R.id.listViewBtPairedPCs);

    ArrayList<BluetoothDevice> pairedBluetoothList = new ArrayList<>();

    BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
    Set<BluetoothDevice> pairedDevices = bluetoothAdapter.getBondedDevices();

    if (pairedDevices.size() > 0) {
        for (BluetoothDevice device : pairedDevices) {
            if(device.getBluetoothClass().getMajorDeviceClass() == BluetoothClass.Device.Major.COMPUTER) {
                pairedBluetoothList.add(device);
            }
        }
        if (pairedBluetoothList.size() == 0) {
            Toast.makeText(getActivity().getApplicationContext(), R.string.bluetooth_no_paired_found, Toast.LENGTH_LONG).show();
            return null;
        }
    } else {
        Toast.makeText(getActivity().getApplicationContext(), R.string.bluetooth_no_paired_found, Toast.LENGTH_LONG).show();
        return null;
    }
    BluetoothPairedDevicesAdapter adapter = new BluetoothPairedDevicesAdapter(getActivity(), pairedBluetoothList, this);
    listViewBtPairedPCs.setAdapter(adapter);
    return view;
}
 
源代码15 项目: react-native-obd2   文件: OBD2Handler.java
public Set<BluetoothDevice> getBondedDevices() throws IOException {
  if (!mPreRequisites) {
    throw new IOException("Bluetooth is not enabled");
  }

  final BluetoothAdapter btAdapter = BluetoothAdapter.getDefaultAdapter();
  if (btAdapter == null || !btAdapter.isEnabled()) {
    throw new IOException("This device does not support Bluetooth or it is disabled.");
  }

  Set<BluetoothDevice> pairedDevices = btAdapter.getBondedDevices();
  return pairedDevices;
}
 
源代码16 项目: CarBusInterface   文件: BluetoothListPreference.java
public BluetoothListPreference(final Context context, final AttributeSet attrs) {
    super(context, attrs);

    if (D) Log.d(TAG, "BluetoothListPreference()");

    CharSequence[] entries = new CharSequence[1];
    CharSequence[] values = new CharSequence[1];

    Set<BluetoothDevice> devices = null;

    final BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();

    if (adapter != null) {
        devices = adapter.getBondedDevices();

        if (devices.size() > 0) {
            entries = new CharSequence[devices.size()];
            values = new CharSequence[devices.size()];
            int i = 0;
            for (BluetoothDevice device : devices) {
                entries[i] = device.getName();
                values[i] = device.getAddress();
                i++;
            }
        }
    }

    if (devices == null || devices.size() <= 0) {
        entries[0] = context.getResources().getString(R.string.msg_error_no_bluetooth);
        values[0] = "";
    }

    setEntries(entries);
    setEntryValues(values);
}
 
源代码17 项目: brailleback   文件: DeviceFinder.java
/**
 * Returns a list of bonded and supported devices in the order they
 * should be tried.
 */
public List<DeviceInfo> findDevices() {
    BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
    if (adapter == null) {
        return Collections.emptyList();
    }

    List<DeviceInfo> ret = new ArrayList<DeviceInfo>();
// getBondedDevices() may contain null.
Set<BluetoothDevice> bondedDevices = adapter.getBondedDevices();
if (bondedDevices == null) {
  return ret;
}
    for (BluetoothDevice dev : bondedDevices) {
  if (dev == null) {
    continue;
  }
        for (SupportedDevice matcher : SUPPORTED_DEVICES) {
            DeviceInfo matched = matcher.match(dev);
            if (matched != null) {
                ret.add(matched);
            }
        }
    }
    String lastAddress = mSharedPreferences.getString(
        LAST_CONNECTED_DEVICE_KEY, null);
    if (lastAddress != null) {
        // If the last device that was successfully connected is
        // not already first in the list, put it there.
        // (Hence, the 1 below is intentional).
        for (int i = 1; i < ret.size(); ++i) {
            if (ret.get(i).getBluetoothDevice().getAddress().equals(
                    lastAddress)) {
                Collections.swap(ret, 0, i);
            }
        }
    }
    return ret;
}
 
源代码18 项目: Android-BluetoothKit   文件: BluetoothUtils.java
public static List<BluetoothDevice> getBondedBluetoothClassicDevices() {
    BluetoothAdapter adapter = getBluetoothAdapter();
    List<BluetoothDevice> devices = new ArrayList<BluetoothDevice>();
    if (adapter != null) {
        Set<BluetoothDevice> sets = adapter.getBondedDevices();
        if (sets != null) {
            devices.addAll(sets);
        }
    }
    return devices;
}
 
源代码19 项目: AndroidDemoProjects   文件: MainActivity.java
private void startSyncProxyService() {
	boolean isPaired = false;
	BluetoothAdapter btAdapter = BluetoothAdapter.getDefaultAdapter();

	if( btAdapter != null ) {
		if( btAdapter.isEnabled() && btAdapter.getBondedDevices() != null && !btAdapter.getBondedDevices().isEmpty() ) {
			for( BluetoothDevice device : btAdapter.getBondedDevices() ) {
				if( device.getName() != null && device.getName().contains( getString( R.string.device_name ) ) ) {
					isPaired = true;
					break;
				}
			}
		}

		if( isPaired ) {
			if( AppLinkService.getInstance() == null ) {
				Intent appLinkServiceIntent = new Intent( this, AppLinkService.class );
				startService( appLinkServiceIntent );
			} else {
				SyncProxyALM proxyInstance = AppLinkService.getInstance().getProxy();
				if( proxyInstance == null ) {
					AppLinkService.getInstance().startProxy();
				}
			}
		}
	}
}
 
private void populateTriggerBtDevices(int spinnerViewId, int checkBoxViewId, VoiceSettingParamType voiceSettingParamType) {
    MultiSelectionTriggerSpinner btDevicesSpinner = findViewById(spinnerViewId);
    CheckBox allBtCheckbox = findViewById(checkBoxViewId);
    btDevicesSpinner.setVoiceSettingId(voiceSettingId);

    BluetoothAdapter bluetoothAdapter = Utils.getBluetoothAdapter(getBaseContext());

    if (bluetoothAdapter == null) {
        btDevicesSpinner.setVisibility(View.GONE);
        allBtCheckbox.setVisibility(View.GONE);
        return;
    } else {
        btDevicesSpinner.setVisibility(View.VISIBLE);
        allBtCheckbox.setVisibility(View.VISIBLE);
    }

    Set<BluetoothDevice> bluetoothDeviceSet = bluetoothAdapter.getBondedDevices();

    ArrayList<MultiselectionItem> items = new ArrayList<>();
    ArrayList<MultiselectionItem> selection = new ArrayList<>();
    ArrayList<String> selectedItems = new ArrayList<>();

    String enabledBtDevices = voiceSettingParametersDbHelper.getStringParam(
            voiceSettingId,
            voiceSettingParamType.getVoiceSettingParamTypeId());
    Boolean enabledVoiceDevices = voiceSettingParametersDbHelper.getBooleanParam(
            voiceSettingId,
            voiceSettingParamType.getVoiceSettingParamTypeId());
    if ((enabledVoiceDevices != null) && enabledVoiceDevices) {
        allBtCheckbox.setChecked(true);
        findViewById(R.id.trigger_bt_when_devices).setVisibility(View.GONE);
    } else {
        findViewById(R.id.trigger_bt_when_devices).setVisibility(View.VISIBLE);
    }

    if (enabledBtDevices != null) {
        for (String btDeviceAddress: enabledBtDevices.split(",")) {
            selectedItems.add(btDeviceAddress);
        }
    }

    for(BluetoothDevice bluetoothDevice: bluetoothDeviceSet) {
        String currentDeviceName = bluetoothDevice.getName();
        String currentDeviceAddress = bluetoothDevice.getAddress();
        MultiselectionItem multiselectionItem;
        if (selectedItems.contains(currentDeviceAddress)) {
            multiselectionItem = new MultiselectionItem(currentDeviceName, currentDeviceAddress, true);
            selection.add(multiselectionItem);
        } else {
            multiselectionItem = new MultiselectionItem(currentDeviceName, currentDeviceAddress,false);
        }
        items.add(multiselectionItem);
    }
    btDevicesSpinner.setItems(items);
    btDevicesSpinner.setSelection(selection);
}