Loading android/app/src/com/android/bluetooth/hid/HidDeviceService.java +43 −0 Original line number Original line Diff line number Diff line Loading @@ -404,6 +404,21 @@ public class HidDeviceService extends ProfileService { return service.disconnect(device); return service.disconnect(device); } } @Override public boolean setConnectionPolicy(BluetoothDevice device, int connectionPolicy) { if (DBG) { Log.d(TAG, "setConnectionPolicy(): device=" + device + " connectionPolicy=" + connectionPolicy); } HidDeviceService service = getService(); if (service == null) { return false; } return service.setConnectionPolicy(device, connectionPolicy); } @Override @Override public boolean reportError(BluetoothDevice device, byte error) { public boolean reportError(BluetoothDevice device, byte error) { if (DBG) { if (DBG) { Loading Loading @@ -627,6 +642,34 @@ public class HidDeviceService extends ProfileService { return checkDevice(device) && mHidDeviceNativeInterface.disconnect(); return checkDevice(device) && mHidDeviceNativeInterface.disconnect(); } } /** * Connects Hid Device if connectionPolicy is {@link BluetoothProfile#CONNECTION_POLICY_ALLOWED} * and disconnects Hid device if connectionPolicy is * {@link BluetoothProfile#CONNECTION_POLICY_FORBIDDEN}. * * <p> The device should already be paired. * Connection policy can be one of: * {@link BluetoothProfile#CONNECTION_POLICY_ALLOWED}, * {@link BluetoothProfile#CONNECTION_POLICY_FORBIDDEN}, * {@link BluetoothProfile#CONNECTION_POLICY_UNKNOWN} * * @param device Paired bluetooth device * @param connectionPolicy determines whether hid device should be connected or disconnected * @return true if hid device is connected or disconnected, false otherwise */ public boolean setConnectionPolicy(BluetoothDevice device, int connectionPolicy) { enforceCallingOrSelfPermission(BLUETOOTH_ADMIN_PERM, "Need BLUETOOTH_ADMIN permission"); if (DBG) { Log.d(TAG, "setConnectionPolicy: device " + device + " and connectionPolicy " + connectionPolicy); } if (connectionPolicy == BluetoothProfile.CONNECTION_POLICY_FORBIDDEN) { disconnect(device); return true; } return false; } synchronized boolean reportError(BluetoothDevice device, byte error) { synchronized boolean reportError(BluetoothDevice device, byte error) { enforceCallingOrSelfPermission(BLUETOOTH_ADMIN_PERM, "Need BLUETOOTH ADMIN permission"); enforceCallingOrSelfPermission(BLUETOOTH_ADMIN_PERM, "Need BLUETOOTH ADMIN permission"); if (DBG) { if (DBG) { Loading android/app/src/com/android/bluetooth/pan/PanService.java +9 −0 Original line number Original line Diff line number Diff line Loading @@ -249,6 +249,15 @@ public class PanService extends ProfileService { return service.disconnect(device); return service.disconnect(device); } } @Override public boolean setConnectionPolicy(BluetoothDevice device, int connectionPolicy) { PanService service = getService(); if (service == null) { return false; } return service.setConnectionPolicy(device, connectionPolicy); } @Override @Override public int getConnectionState(BluetoothDevice device) { public int getConnectionState(BluetoothDevice device) { PanService service = getService(); PanService service = getService(); Loading Loading
android/app/src/com/android/bluetooth/hid/HidDeviceService.java +43 −0 Original line number Original line Diff line number Diff line Loading @@ -404,6 +404,21 @@ public class HidDeviceService extends ProfileService { return service.disconnect(device); return service.disconnect(device); } } @Override public boolean setConnectionPolicy(BluetoothDevice device, int connectionPolicy) { if (DBG) { Log.d(TAG, "setConnectionPolicy(): device=" + device + " connectionPolicy=" + connectionPolicy); } HidDeviceService service = getService(); if (service == null) { return false; } return service.setConnectionPolicy(device, connectionPolicy); } @Override @Override public boolean reportError(BluetoothDevice device, byte error) { public boolean reportError(BluetoothDevice device, byte error) { if (DBG) { if (DBG) { Loading Loading @@ -627,6 +642,34 @@ public class HidDeviceService extends ProfileService { return checkDevice(device) && mHidDeviceNativeInterface.disconnect(); return checkDevice(device) && mHidDeviceNativeInterface.disconnect(); } } /** * Connects Hid Device if connectionPolicy is {@link BluetoothProfile#CONNECTION_POLICY_ALLOWED} * and disconnects Hid device if connectionPolicy is * {@link BluetoothProfile#CONNECTION_POLICY_FORBIDDEN}. * * <p> The device should already be paired. * Connection policy can be one of: * {@link BluetoothProfile#CONNECTION_POLICY_ALLOWED}, * {@link BluetoothProfile#CONNECTION_POLICY_FORBIDDEN}, * {@link BluetoothProfile#CONNECTION_POLICY_UNKNOWN} * * @param device Paired bluetooth device * @param connectionPolicy determines whether hid device should be connected or disconnected * @return true if hid device is connected or disconnected, false otherwise */ public boolean setConnectionPolicy(BluetoothDevice device, int connectionPolicy) { enforceCallingOrSelfPermission(BLUETOOTH_ADMIN_PERM, "Need BLUETOOTH_ADMIN permission"); if (DBG) { Log.d(TAG, "setConnectionPolicy: device " + device + " and connectionPolicy " + connectionPolicy); } if (connectionPolicy == BluetoothProfile.CONNECTION_POLICY_FORBIDDEN) { disconnect(device); return true; } return false; } synchronized boolean reportError(BluetoothDevice device, byte error) { synchronized boolean reportError(BluetoothDevice device, byte error) { enforceCallingOrSelfPermission(BLUETOOTH_ADMIN_PERM, "Need BLUETOOTH ADMIN permission"); enforceCallingOrSelfPermission(BLUETOOTH_ADMIN_PERM, "Need BLUETOOTH ADMIN permission"); if (DBG) { if (DBG) { Loading
android/app/src/com/android/bluetooth/pan/PanService.java +9 −0 Original line number Original line Diff line number Diff line Loading @@ -249,6 +249,15 @@ public class PanService extends ProfileService { return service.disconnect(device); return service.disconnect(device); } } @Override public boolean setConnectionPolicy(BluetoothDevice device, int connectionPolicy) { PanService service = getService(); if (service == null) { return false; } return service.setConnectionPolicy(device, connectionPolicy); } @Override @Override public int getConnectionState(BluetoothDevice device) { public int getConnectionState(BluetoothDevice device) { PanService service = getService(); PanService service = getService(); Loading