1 /*
2  * Copyright 2012 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package android.bluetooth;
18 
19 import android.bluetooth.IBluetooth;
20 import android.bluetooth.IBluetoothGatt;
21 import android.bluetooth.IBluetoothManagerCallback;
22 import android.bluetooth.IBluetoothProfileServiceConnection;
23 import android.bluetooth.IBluetoothStateChangeCallback;
24 
25 /**
26  * System private API for talking with the Bluetooth service.
27  *
28  * {@hide}
29  */
30 interface IBluetoothManager
31 {
registerAdapter(in IBluetoothManagerCallback callback)32     IBluetooth registerAdapter(in IBluetoothManagerCallback callback);
unregisterAdapter(in IBluetoothManagerCallback callback)33     void unregisterAdapter(in IBluetoothManagerCallback callback);
34     @UnsupportedAppUsage
registerStateChangeCallback(in IBluetoothStateChangeCallback callback)35     void registerStateChangeCallback(in IBluetoothStateChangeCallback callback);
36     @UnsupportedAppUsage
unregisterStateChangeCallback(in IBluetoothStateChangeCallback callback)37     void unregisterStateChangeCallback(in IBluetoothStateChangeCallback callback);
isEnabled()38     boolean isEnabled();
enable(String packageName)39     boolean enable(String packageName);
enableNoAutoConnect(String packageName)40     boolean enableNoAutoConnect(String packageName);
disable(String packageName, boolean persist)41     boolean disable(String packageName, boolean persist);
getState()42     int getState();
43     @UnsupportedAppUsage
getBluetoothGatt()44     IBluetoothGatt getBluetoothGatt();
45 
bindBluetoothProfileService(int profile, IBluetoothProfileServiceConnection proxy)46     boolean bindBluetoothProfileService(int profile, IBluetoothProfileServiceConnection proxy);
unbindBluetoothProfileService(int profile, IBluetoothProfileServiceConnection proxy)47     void unbindBluetoothProfileService(int profile, IBluetoothProfileServiceConnection proxy);
48 
getAddress()49     String getAddress();
getName()50     String getName();
51 
onFactoryReset()52     boolean onFactoryReset();
53 
isBleScanAlwaysAvailable()54     boolean isBleScanAlwaysAvailable();
enableBle(String packageName, IBinder b)55     boolean enableBle(String packageName, IBinder b);
disableBle(String packageName, IBinder b)56     boolean disableBle(String packageName, IBinder b);
isBleAppPresent()57     boolean isBleAppPresent();
isHearingAidProfileSupported()58     boolean isHearingAidProfileSupported();
59 }
60 
61