IBluetooth.aidl revision e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8
19066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* 29066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Copyright (C) 2008, The Android Open Source Project 39066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 49066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 59066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * you may not use this file except in compliance with the License. 69066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * You may obtain a copy of the License at 79066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 89066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 99066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * See the License for the specific language governing permissions and 149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * limitations under the License. 159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpackage android.bluetooth; 189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1916fb88a673c41b93c5d57ccb28c2697e7d87701aNick Pellyimport android.bluetooth.IBluetoothCallback; 20ef2cb7c93a99096799d415e721dda46d1bf7a005Jaikumar Ganeshimport android.bluetooth.IBluetoothStateChangeCallback; 21fb658c72a3a76dac334c39070d1501a2575c1069Jaikumar Ganeshimport android.bluetooth.IBluetoothHealthCallback; 22545e6708adda6859932b55fd824794b1401f5318Jaikumar Ganeshimport android.bluetooth.BluetoothDevice; 232ea1e85dcb57d17f5782dbafa1d25eb51c630e4bJaikumar Ganeshimport android.bluetooth.BluetoothHealthAppConfiguration; 24aef439e6f825c0cb99a2ac08c8207f48b7a9fe10Nick Pellyimport android.os.ParcelUuid; 252ea1e85dcb57d17f5782dbafa1d25eb51c630e4bJaikumar Ganeshimport android.os.ParcelFileDescriptor; 26dd0463aef18d251c741bfc9dc7a2787443ef36f1Jaikumar Ganesh 279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/** 289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * System private API for talking with the Bluetooth service. 299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * {@hide} 319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 32bd022f423a33f0794bb53e5b0720da2d67e4631cNick Pellyinterface IBluetooth 339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{ 349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean isEnabled(); 35e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh int getState(); 36105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project boolean enable(); 37e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh boolean disable(); 389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project String getAddress(); 4058b93c36409c7fb91a644605f004b6d247d9b540Jaikumar Ganesh ParcelUuid[] getUuids(); 41e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh boolean setName(in String name); 42e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh String getName(); 439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int getScanMode(); 4512835478ee687a493d1b5882e67b6725bd539c26Nick Pelly boolean setScanMode(int mode, int duration); 469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int getDiscoverableTimeout(); 489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean setDiscoverableTimeout(int timeout); 499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 50d5ac1ae36b4e096eb97984334f86d0c68abea2f7Jaikumar Ganesh boolean startDiscovery(); 519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean cancelDiscovery(); 529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean isDiscovering(); 539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 54c53cab20b225ba69057441ecb06db6478ab8ff9bJaikumar Ganesh int getAdapterConnectionState(); 55cb1d354c1e9b458a0426cd08520d938012e32b34Jaikumar Ganesh int getProfileConnectionState(int profile); 56a46f2fb152355fe591f9dddeb41f01fef5ccad1dJaikumar Ganesh 57e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh BluetoothDevice[] getBondedDevices(); 58e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh boolean createBond(in BluetoothDevice device); 59e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh boolean cancelBondProcess(in BluetoothDevice device); 60e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh boolean removeBond(in BluetoothDevice device); 61e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh int getBondState(in BluetoothDevice device); 62e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh 63e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh String getRemoteName(in BluetoothDevice device); 64e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh String getRemoteAlias(in BluetoothDevice device); 65e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh boolean setRemoteAlias(in BluetoothDevice device, in String name); 66e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh int getRemoteClass(in BluetoothDevice device); 67e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh ParcelUuid[] getRemoteUuids(in BluetoothDevice device); 68e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh //TODO(BT) 69e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh //boolean fetchRemoteUuids(in BluetoothDevice device, in ParcelUuid uuid, 70e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh // in IBluetoothCallback callback); 71e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh 72e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh boolean setPin(in BluetoothDevice device, boolean accept, int len, in byte[] pinCode); 73e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh boolean setPasskey(in BluetoothDevice device, boolean accept, int len, in byte[] 74e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh passkey); 75e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8Jaikumar Ganesh boolean setPairingConfirmation(in BluetoothDevice device, boolean accept); 762ea1e85dcb57d17f5782dbafa1d25eb51c630e4bJaikumar Ganesh 77cb1d354c1e9b458a0426cd08520d938012e32b34Jaikumar Ganesh void sendConnectionStateChange(in BluetoothDevice device, int profile, int state, int prevState); 789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 79