• Home
  • History
  • Annotate
  • only in /frameworks/base/core/java/android/bluetooth/
History log of /frameworks/base/core/java/android/bluetooth/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
d77982ef29b2d3b5de42846ba308fc9f880938a2 30-Nov-2012 Matthew Xie <mattx@google.com> Clean up debug messages

bug 7626174

Change-Id: I65cdcaf2c48a78468b6cef0b8591289435068b24
luetoothAdapter.java
luetoothSocket.java
652678af4d18b9a6c18ce6a860de01d958bc82fe 22-Nov-2012 zzy <zhenye@broadcom.com> timeout support for accept() and added check for signal size

bug 7592240

Change-Id: Ide1868da669c190cdfed90f7af3f739ec9da690b
luetoothSocket.java
fa0fd39a4bf296d254aa398c1b19ec960efa641d 24-Oct-2012 Zhihai Xu <zhihaixu@google.com> License of files Bluetooth package is not updated to ASL2

bug 7385618

Change-Id: I6232f537f4fda979d3aabe3a059c11d3299de9b8
luetoothSocket.java
BluetoothHeadsetPhone.aidl
BluetoothHealth.aidl
BluetoothInputDevice.aidl
BluetoothManager.aidl
BluetoothManagerCallback.aidl
BluetoothPan.aidl
b49a89635906e0901637a4a4c1c2f5bb263b6595 11-Oct-2012 zzy <zhenye@broadcom.com> Add serial port profile support and allow to connect to rfcomm channel without sdp discovery

bug 7272974

Change-Id: Idc10edc056b48da2fd96bea84eba3fb73b97bab1
luetoothSocket.java
563e414784eb81e4ea4051667d5c8855b17f7534 10-Oct-2012 Matthew Xie <mattx@google.com> Reduce android.bluetooth package debug messages

bug 7174712

Change-Id: I8d3fdc8edbe42068b5a550660d7b24854c3c4af4
luetoothA2dp.java
luetoothHeadset.java
luetoothHealth.java
luetoothInputDevice.java
luetoothPan.java
luetoothPbap.java
luetoothSocket.java
luetoothTetheringDataTracker.java
9e3045c75c80d859dd16087e69f5bfbe15ca8bf4 30-Aug-2012 Matthew Xie <mattx@google.com> Merge "Turn off verbose debug message in BluetoothAdapter Change-Id: I30245ab911b5428f7af38f195b941db02d36b18f" into jb-mr1-dev
3b6214f373b693323a474325662242415090f7f7 29-Aug-2012 Matthew Xie <mattx@google.com> Turn off verbose debug message in BluetoothAdapter
Change-Id: I30245ab911b5428f7af38f195b941db02d36b18f
luetoothAdapter.java
da6da0907b28d4704aabbdb1bbeb4300954670d1 16-Aug-2012 Irfan Sheriff <isheriff@google.com> Captive portal handling

We now notify the user of a captive portal before switching to the network as default.
This allows background applications to continue to work until the user confirms he
wants to sign in to the captive portal.

Also, moved out captive portal handling out of wifi as a seperate component.

Change-Id: I7c7507481967e33a1afad0b4961688bd192f0d31
luetoothTetheringDataTracker.java
fffa86ba834d37684238c83c0dd081133324984d 09-Aug-2012 Ganesh Ganapathi Batta <ganeshg@broadcom.com> Implement enableNoAutoconnect()

Adding enableNoAutoconnect() API support in Bluetooth service
to let BT enable in quiet mode

Change-Id: I546f3ceb298082a9c9a698f406379470e3cc0d4f
luetoothAdapter.java
BluetoothManager.aidl
6f6c54519a9b15379bb79e195655b6bd4fc5967a 01-Aug-2012 Ganesh Ganapathi Batta <ganeshg@broadcom.com> Auto connection/disconnection related changes

Remove ACTION_CONNECT_OTHER_PROFILES as it is no longer used
Allow only PRIORITY_ON and PRIORTY_OFF as priority params for SetPriority()
API in BluetoothA2DP and BluetoothHeadset
BluetoothPBAP: Pass on proxy object as part of Service Connected callback

Change-Id: Ida00fc2b7d1dcb91b01f7ddd2cea482367a3b334
luetoothA2dp.java
luetoothHeadset.java
luetoothPbap.java
luetoothProfile.java
10d7e8afb2297b24ad3bbccd0f5f3ded5e79fe12 03-Aug-2012 Martijn Coenen <maco@google.com> Bluetooth: fix enableNoAutoConnect() call.

For now, just do a regular connect.

Change-Id: Ibc43098d45c82177298cb17d72a32c7904924021
luetoothAdapter.java
82e57fe1741e225a65bc69004ae12cbbdfae5737 29-Jun-2012 Ravi Nagarajan <nravi@broadcom.com> Reset priority on unbond

Change-Id: I8232c666bde26235ad527c96e5218fc1b3e7a1db
luetoothA2dp.java
luetoothHeadset.java
c61eb2617df72f1e58d23e4c27897efedcfc0a09 25-Jun-2012 Swaminatha Balaji <swbalaji@broadcom.com> Fix for When Hf is rejected the device should initiate A2dp if a2dp is enabled

Change-Id: I82d05eacb6c7fae6eb1ebf246d2fce7314ff0a75
luetoothProfile.java
305f240dc12325af4fa267e7c4f52c680bb05280 19-Jun-2012 Syed Ibrahim M <syedibra@broadcom.com> handle NullPointerException in cases where a proxy
call to AdapterService is called after Adapter
Service is stopped.

Change-Id: I009787f03f9a013b9b06fcb7e3f6241c850f8cd2
luetoothDevice.java
a8c6df0d3a6b929cac3e59abde8309e8a45ea78a 11-Jul-2012 Fred <fredc@broadcom.com> Removed startService() call from BluetoothManagerService.

BT enable()/disable() are handled by using the binder interface

Change-Id: I0bb8d4984129706e424320241ca3ea7e12caf0d3

Conflicts:

core/java/android/bluetooth/IBluetooth.aidl
Bluetooth.aidl
9631314e3d28b6e96ef0b7cc777f1a7747a0ac39 30-Jun-2012 Matthew Xie <mattx@google.com> Fix merge error, put in tmp workaround for input manager.

Fix merge error, missing enableNoAutoConnect api.
Remove bluetoothF from inputManageF.systemReady call as tmp workaround.
Recover shutdownRadios(MAX_RADIO_WAIT_TIME) call in ShutdownThread

Change-Id: Ice2b5c54267755bdbf56c742feabbb8709b92570
Bluetooth.aidl
bf072a712f584ae1c01022835b0de21c40513d06 10-May-2012 fredc <fredc@broadcom.com> Moved BluetoothAdapter.ACTION_STATE_CHANGED broadcast from AdapterService to BluetoothManagerService

Change-Id: I88e5f3fe050cf11eae9c5cf1b7c393a178b8f9b1
luetoothAdapter.java
Bluetooth.aidl
BluetoothCallback.aidl
20738945d482d9e313cd8b48c1bd83b6278934c7 27-Apr-2012 Swaminatha Balaji <swbalaji@broadcom.com> Auto connect hf/a2dp

Change-Id: I7c1fb4e2614f65e6810f195814dcf0cad88aee21
luetoothA2dp.java
luetoothHeadset.java
7329e70841ff1ab78e0a9e2042aee1f10102eaf4 27-Apr-2012 zzy <zhenye@broadcom.com> Added code to tear down dhcp thread when tethering is off
luetoothTetheringDataTracker.java
d6883533e4ac3f73d2fde1db9a1dddf06dac6709 26-Apr-2012 fredc <fredc@broadcom.com> Fixed socket not closing on BT off. Used RemoteCallbackList to monitor binder deaths in BluetoothManagerService.

Change-Id: I524964bd2836d8c5a4bae095b93ac9481337941d
luetoothAdapter.java
luetoothSocket.java
903ac6f399dcd4f574bf388daa7b5f5907d448d3 24-Apr-2012 fredc <fredc@broadcom.com> Fixed issue with Settings app crashing after during on/off and unpair.

Fixed issue with BluetoothAdapter.getRemoteDevice() returning null.

Change-Id: Ie86813532530a6b57bde1c430c7b4875ecc7354c
luetoothAdapter.java
luetoothDevice.java
luetoothPan.java
luetoothSocket.java
7077272d8feed2f0172520d4fd3b4524e18d5ec1 23-Apr-2012 Ravi Nagarajan <nravi@broadcom.com> Disable debug logs in BluetoothDevice, that was turned on accidentally Change-Id: I8a0a3f5775c2b9f5a928e4840851e687f25b57ab
luetoothDevice.java
116d1d4696ac8e300c83dd8a95e20e67717ef520 20-Apr-2012 fredc <fredc@broadcom.com> Fixed issue with getting Bluetooth adapter's name and airplane mode

Change-Id: I18b632223574aa41b09ba30de8e35417fad86cbe
luetoothAdapter.java
4bedba49fe6989387fd04499b175af56e068da28 18-Apr-2012 Sreenidhi T <nidhit@broadcom.com> Change done in BluetoothAdapter to use the same API for interacting with the Bluetooth Service. setName was being done using mService while getName was using mManagerService. As a result, the device name was not being updated in Localadapter getname call. Modified to use mService in both cases.

Change-Id: I2e900a782df11fd511319fbb42d94324e50ae89b
luetoothAdapter.java
a097f51e5fde9d00ebe99f4e1915cc6d4cd078ad 16-Apr-2012 Kausik Sinnaswamy <kausik@broadcom.com> BT enable adapter API should return TRUE or FALSE.

Change-Id: Iaef14c51d3407b69505c55a0bbdaf902213402cf
luetoothAdapter.java
0f42037eb7b5118015c2caca635538324ccf0ccf 12-Apr-2012 fredc <fredc@broadcom.com> Non persistent adapter service

Change-Id: Ib13d5c77416e58161df0e04d7a15ec0dddbde8b5

Conflicts:

core/java/android/bluetooth/BluetoothInputDevice.java

Conflicts:

core/java/com/android/internal/app/ShutdownThread.java
services/java/com/android/server/SystemServer.java

Conflicts:

services/java/com/android/server/SystemServer.java
services/java/com/android/server/pm/ShutdownThread.java
luetoothA2dp.java
luetoothAdapter.java
luetoothDevice.java
luetoothHeadset.java
luetoothHealth.java
luetoothInputDevice.java
luetoothPan.java
luetoothSocket.java
luetoothTetheringDataTracker.java
BluetoothManager.aidl
BluetoothManagerCallback.aidl
BluetoothPan.aidl
919a4c6264b733585152ce1dc6f868c1093d368b 13-Apr-2012 Ravi Nagarajan <nravi@broadcom.com> Handle cancel bond for both legacy and ssp pairing

Change-Id: I7a6db3cd7b5b8e72dca988e753dcba9a8df614c8
luetoothDevice.java
349e62f329bbb8edab89356973773a5648f26751 09-Apr-2012 Priti Aghera <paghera@broadcom.com> HID-PTS: Included apis' for pts tests

Change-Id: I7dc0a893ee86a2560c351a565bd170517f6c6079
luetoothInputDevice.java
BluetoothInputDevice.aidl
4c9cacadcc7ab20e06763746bbb41d0acdc106b5 06-Apr-2012 fredc <fredc@broadcom.com> Added support to get a remote device's service UUIDs

Change-Id: I9aa47ac2bb7377aca268e95fec31c518358b3065
luetoothDevice.java
Bluetooth.aidl
827de2d73e9f07e1545839889eaf035aea64ea12 04-Apr-2012 Srikanth Uppala <suppala@broadcom.com> Fix discoverability timeout issues. (a) implement timeout logic (b) persist 'never timeout' after reboot (c) code cleanup

Change-Id: Iacaec4a48a45935a49576c140ea11ea3d0da6361
luetoothAdapter.java
3b147b770269173d5d711d6c33f142dc5e723824 04-Apr-2012 zzy <zhenye@broadcom.com> Added new rfcomm multi accept code
luetoothAdapter.java
luetoothServerSocket.java
luetoothSocket.java
Bluetooth.aidl
13450df2b9264ef2220418f308037c19cec739a9 23-Mar-2012 Matthew Xie <mattx@google.com> Initial Health Profile implementation

Change-Id: I22f35073ceb131d84df6b233d1b63d20fa1b4451
luetoothHeadset.java
luetoothHealth.java
Bluetooth.aidl
BluetoothHealth.aidl
bf246ef0abb6ea354fe412b139dec1adb4e5791d 22-Mar-2012 Matthew Xie <mattx@google.com> Initial implementation of HID, add IBluetoothInputDevice idl

Change-Id: Iadc79a425b4b6e12329d86dd2ac0782adcb0174d
luetoothHeadset.java
luetoothInputDevice.java
BluetoothInputDevice.aidl
db44b20fe6aed65d5cd7e1f6d7c52e4322083039 13-Mar-2012 Priti Aghera <paghera@broadcom.com> Added support to cancel pairing from UI while doing SSP.
The new code sends SSPReply with one of the arguments as false.
Signed-off-by: Priti Aghera <paghera@broadcom.com>
luetoothDevice.java
14b330d3a683eb0cd28e08ef9ebf02f1688fc3d3 09-Mar-2012 Matthew Xie <mattx@google.com> add queryPhoneState in IBluetoothHeadsetPhone

Change-Id: I10a9237518f04c1453d09f9a10b6ce0e6107056a
BluetoothHeadsetPhone.aidl
3e8c82edb1feafc796aa52efafedc13f794c4dcd 17-Feb-2012 Matthew Xie <mattx@google.com> Framework changes for HFP and A2DP profile implementation of the new stack.
Add IBluetoothHeadsetPhone.aidl for a small service in Phone to get
phone state changes

Change-Id: I1015e4a69720c4e9cd18ae4236ccd0dbff2e1b2c
luetoothA2dp.java
luetoothHeadset.java
BluetoothA2dp.aidl
BluetoothHeadset.aidl
BluetoothHeadsetPhone.aidl
e21a4ac09d2473becaea43a73d19e9e836e7732a 07-Mar-2012 Jaikumar Ganesh <jaikumar@google.com> Add a new version of the disable API.

This allows for the setting to be persisted or not.
Also turn on Bluetooth in System Server if needed.
It won't work currently because the service wouldn't have
started.

Change-Id: I15fa2bff93aa32134c1b565fcbe90ba68614b6a1
luetoothAdapter.java
Bluetooth.aidl
e4caddbb7a3b39fd6a1ccf107c7dbf09bc8978e8 26-Jan-2012 Jaikumar Ganesh <jaikumar@google.com> Changes for new Bluetooth APIs.

Changes to Bluetooth Adapter, Device and IBluetooth interfaces
for new Bluetooth APIs. Delete AudioGateway.

Change-Id: Ib51b31187eafde261441b9311b5e7e13c8bff82f
luetoothAdapter.java
luetoothAudioGateway.java
luetoothDevice.java
luetoothHealth.java
luetoothInputDevice.java
luetoothPan.java
luetoothSocket.java
Bluetooth.aidl
313a2167098ce8498db3a50d70724f260e8169c0 18-Jan-2012 Jaikumar Ganesh <jaikumar@google.com> Delete various Bluetooth files for stack integration.
tCommandHandler.java
tCommandResult.java
tParser.java
luetoothA2dp.java
luetoothDeviceProfileState.java
luetoothProfileState.java
eadsetBase.java
adba6ffbb949e3644f0effdaffee349b0b49688a 22-Jun-2012 Scott Main <smain@google.com> am 101a120c: am 9be0105f: docs: fix several links

* commit '101a120c27f68fb7d44e6221244cb9441dfc4285':
docs: fix several links
9be0105fbc56eb1b1813bb7c5fe258a144867a43 22-Jun-2012 Scott Main <smain@google.com> docs: fix several links

Change-Id: I89d9fd64dc22c90680bb05415cc966c255165af9
ackage.html
bbf30dfd767f823f5f40d14b498e2a593454c5c9 29-May-2012 Wink Saville <wink@google.com> Enhance StateMachine Quitting and logging support.

Make StateMachine#quit non-conditional and remove the need to
process the SM_QUIT_CMD it is now private.

Rename halting to onHalting.

Add onQuitting

Change the message specific logging to be more generic and change
the xxxProcessedMessagesYyy methods to xxxLogRecXyy names. Also add
addLogRec(String) and addLogRec(String, State) as the generic logging
methods.


bug: 5678189
Change-Id: I22f66d11828bfd70498db625fe1be728b90478b7
luetoothDeviceProfileState.java
7a5351078726e6e15b1b30b81cedc7d5950643d3 07-May-2012 Jason Simmons <jsimmons@google.com> am 1903a732: Merge "Avoid calling BluetoothSocket.destroyNative twice" into ics-aah

* commit '1903a73248af260f4cbb5a9c65664f22c7f51c41':
Avoid calling BluetoothSocket.destroyNative twice
34b2feb041e263e11bbcec1f2a5094e21be9dc13 04-May-2012 Jason Simmons <jsimmons@google.com> Avoid calling BluetoothSocket.destroyNative twice

If the destroyNative JNI method is called twice, it will attempt to free
the socketData twice, and the second free will cause an assertion failure.

To avoid this, check whether mSocketState has already been set to CLOSED
while holding the write lock. If it has, then destroyNative has already
been called and should not be called again.

Bug: 3096033
Change-Id: Ic7c0bbf21823d389b26919da8c533d8ac4d49064
luetoothSocket.java
6c614b7e596d2c7c410adec727bf787834cb258b 18-Apr-2012 Martijn Coenen <maco@google.com> Allow enabling Bluetooth without auto-connecting.

This is a feature used for NFC-to-Bluetooth handover:
we want to enable BT for file transfer, and disconnect
it when we're done. During this period we don't want
to auto-connect other devices - it should be transparent
to the user that Bluetooth is used. Also, don't allow
A2DP/HSP incoming connections.

Change-Id: I0a03e8084c439b1271b6a80f4d9da5aacfe19c45
luetoothAdapter.java
Bluetooth.aidl
5bbd4b4f5fc19302fa017ad6afee6eb2d489d91a 21-Apr-2012 Jeff Brown <jeffbrown@google.com> Get alias for Bluetooth devices.

Bluetooth devices can be renamed by the user. Make the
input system aware of the user-specified name and transparently
pass it down to applications. This enables the keyboard
layout picker Settings UI to use device names that are
consistent with what the user set in the Bluetooth UI.

Bug: 6363157
Change-Id: I8eea26ce2c69c2a3f09c8de02e9e847610e0419c
luetoothDevice.java
f76a50ce8fdc6aea22cabc77b2977a1a15a79630 09-Mar-2012 Ken Wakasa <kwakasa@google.com> Fix obvious typos under frameworks/base/core

Change-Id: Ia5fc3db1bb51824e7523885553be926bcc42d736
tCommandResult.java
luetoothDevice.java
luetoothPbap.java
2b072677538de979961b5bf527109fdab1713731 23-Dec-2011 Joe Fernandez <joefernandez@google.com> am 201469f5: am bb7f590a: Merge "docs: Add developer guide cross-references, Project ACRE, round 4" into ics-mr1

* commit '201469f54522436be79d4d6665721049bfc74320':
docs: Add developer guide cross-references, Project ACRE, round 4
3aef8e1d1b2f0b87d470bcccf37ba4ebb6560c45 20-Dec-2011 Joe Fernandez <joefernandez@google.com> docs: Add developer guide cross-references, Project ACRE, round 4

Change-Id: I1b43414aaec8ea217b39a0d780c80a25409d0991
luetoothAdapter.java
luetoothDevice.java
luetoothServerSocket.java
luetoothSocket.java
ackage.html
75596b4545da36fa7592bd4a2ae680e5b336ee47 08-Dec-2011 Nick Pelly <npelly@google.com> Add BluetoothAdapter.getRemoteDevice(byte[])

This is useful for NFC->BT hand-over, where we are already working with bytes.

Change-Id: I2fff0b4fa0cefe9bfdf9a13f7ec6f557776a8a03
luetoothAdapter.java
9bb275197df8eb999eab4cdd0a2aff83c2bb2ef6 28-Nov-2011 Jaikumar Ganesh <jaikumar@google.com> Cleanup references when turning BT off.

Bug: 5572649
Change-Id: I62f9e0620832b69995d5c6e1c24634c9a3895a4b
luetoothA2dp.java
luetoothAdapter.java
luetoothDeviceProfileState.java
luetoothHeadset.java
luetoothHealth.java
luetoothInputDevice.java
luetoothPan.java
luetoothPbap.java
2b9af44e401d884469869a4ac0933bfa727d3135 17-Nov-2011 Matthew Xie <mattx@google.com> am 6da97a24: Merge "Check the bluetooth state for getUuid call" into ics-mr0

* commit '6da97a24e329851888890d4e380066037d08bcd7':
Check the bluetooth state for getUuid call
44b58ab89e59b3d8241901232c8f7dc9617b206e 16-Nov-2011 Matthew Xie <mattx@google.com> Check the bluetooth state for getUuid call

Donnot make the bluetoothservice.getUuids call if the bluetooth
is not on. Also get rid of all the necessary locks on BluetoothService
for get property call. It had a lock on BluetoothAdapterProperty.
bug5472114

Change-Id: I383472ae6006fc1f0129c960c8a44ed0df027a43
luetoothAdapter.java
98f06da8ed2851a768358de1979838ad1bb6d187 10-Nov-2011 Matthew Xie <mattx@google.com> Send CONNECT_OTHER_PROFILE to Device profile for hfp and a2dp incoming connect

Send CONNECT_OTHER_PROFILE to Device profile for low priority hfp and a2dp
incoming connect. In the case when HFP autoconnect is off but a2dp autoconnect
is on, if HF autoconnect to HFP, phone will reject HFP but connect a2dp.
Before this fix, phone reject HFP. A2dp will not get connected unless the HF do
media auto-connect, which most carkits do not do.
Also do similar change for incoming a2dp connection
bug 5091838

Change-Id: Ife1815f527bcd94e0d9ffc645028484fa9c49a43
luetoothDeviceProfileState.java
Bluetooth.aidl
ad2321027e9731711544b43378bd7b2f01890774 08-Nov-2011 Matthew Xie <mattx@google.com> Make public APIs of ACTION_UUID, EXTRA_UUID, getUuids, and fetchUuidsWithSdp

Give APP a way to find out if a service is supported by a remote device
bug 5487202

Change-Id: I5a2d050cf24d945e1c9875963c34177ed1ce773a
luetoothDevice.java
9d6a51623fdabbe993d7b8848794607394ef7cc2 08-Nov-2011 Ed Heyl <ed@google.com> Fix build break; Revert "Make public APIs of ACTION_UUID, getUuids, and fetchUuidsWithSdp"

This reverts commit ae5839dcad76625313e6736d69eeaf37af435a3f.
luetoothDevice.java
67f1ceb616ced4ce9857ee24f43d3c9dd5b289a5 08-Nov-2011 Matthew Xie <mattx@google.com> Merge "Make public APIs of ACTION_UUID, getUuids, and fetchUuidsWithSdp" into ics-mr1
ae5839dcad76625313e6736d69eeaf37af435a3f 27-Oct-2011 Matthew Xie <mattx@google.com> Make public APIs of ACTION_UUID, getUuids, and fetchUuidsWithSdp

Give APP a way to find out if a service is supported by a remote device
bug 5487202

Change-Id: Ie778b3227f29a24cdf61fa0365b82f9a45d439dc
luetoothDevice.java
6ae591217591e7f3e7de20b71f89d2ee9c8dc8bb 27-Oct-2011 Jaikumar Ganesh <jaikumar@google..com> Fix auto connection of headset profile.

Sometimes when headset service doesn't get bound, the auto
connection fails.

Based on a patch by: Chunho Park <chun.ho.park@samsung.com>

Change-Id: Ia24613b47487717f51895953c7e8bc52abffecb5
luetoothDeviceProfileState.java
2d68a6ba3c1354f363e5ee77448f163664bf47d9 27-Sep-2011 Scott Main <smain@google.com> docs: mix of BT and NFC javadoc updates
Add Health profile to various discussions about profiles
Add descriptions to NFC interfaces, tweak some desciptions, and fix some broken links

Change-Id: Ib89434c78a4ad60b4358dca9a6c335451d1c4125
luetoothAdapter.java
luetoothProfile.java
fd966a124f10448298aac79c4bb6cf8eb877277a 22-Sep-2011 Jaikumar Ganesh <jaikumar@google.com> Make Bluetooth Health constant public.

Change-Id: I366f1231056fe978d85ee80c773d5911badb22e2
luetoothProfile.java
b5d2d4526cd2c0117b7a33b1297ac683c37ac5c7 07-Sep-2011 Jaikumar Ganesh <jaikumar@google.com> Add error codes for channel disconnection / connection.

Channel connection / disconnection was handled as boolean,
doesn't capture all the values. Also make it asynchronous
instead of the dbus call being synchronous.

Change-Id: If30177b9f93b7c83f162fbbc1233edf3e46dbfea
luetoothHealth.java
eb9d34630f74d0260690287f2df57c0cd3d7ba1d 01-Sep-2011 Jaikumar Ganesh <jaikumar@google.com> Make Bluetooth Health APIs public.

Fix a few bugs:
a) Pass a integer token to identify the channel.
b) Close fds in case of errors.

Change-Id: I2046787be5008769435f2f72a5bd67c19b749da0
luetoothHealth.java
luetoothHealthAppConfiguration.java
luetoothHealthCallback.java
Bluetooth.aidl
BluetoothHealthCallback.aidl
dca56b9432e2cc851d1a58920071fed2e1e3d142 02-Sep-2011 Eric Laurent <elaurent@google.com> Fix issue 5252593: any app can restart the runtime

Replace null device address string by empty sting.

Change-Id: I285c35f3345334e6d2190493b1a8a5aca1a361a4
luetoothDeviceProfileState.java
luetoothProfileState.java
484867a8ed3d46fbb8df493c77f2e2d46a0db654 26-Aug-2011 Matthew Xie <mattx@google.com> Move Bluetooth remove service record handler to the app main thread

Move Bluetooth remove service record handler to the app main thread.
This removes the dependency of caller thread that constructs the
BluetoothAdapter singleton instance. The caller thread could stop while
BluetoothAdapter singleton exists but lose the handler context.
Make the BluetoothService.removeServiceRecord return quickly without
blocking on native call.
bug 4999443

Change-Id: I302534baa381f4aca8192e1e4a9ea21793b07ba6
luetoothAdapter.java
006efb24706378293a2faa137c7c7ca34a2e15cd 24-Aug-2011 Jeff Sharkey <jsharkey@android.com> Merge "Proactively disable data when over policy limit."
8e28b7d78232f6cf08739ca0d129cc7f9e650801 19-Aug-2011 Jeff Sharkey <jsharkey@android.com> Proactively disable data when over policy limit.

Add policy controls to NetworkStateTracker which are combined with
other user preference and internal flags to decide if data connection
should be established. Better locking around enabled flags.

When data network would be over limit, proactively disable data on
that network. Enable when policy is snoozed or when cycle resets.

Track and dismiss notifications from now-stale policies.

Bug: 4587023, 5178147
Change-Id: Ibfcc9f73cda7c369209af701b46eddd3d1943f2d
luetoothTetheringDataTracker.java
9354790fa199a316eba1a2e52b789a3ebe28726b 23-Aug-2011 Jaikumar Ganesh <jaikumar@google.com> Make profile connection state API public.

Change-Id: I1f2810d4e820142435f7bbda051c98ec3e3cf3eb
luetoothAdapter.java
cb1d354c1e9b458a0426cd08520d938012e32b34 19-Aug-2011 Jaikumar Ganesh <jaikumar@google.com> Add Api to get profile connection state.

This gets the current connection state of the profile with respect
to the local Bluetooth adapter.

Change-Id: I7cff6c9201d29a8b45413cff7384b7483f21bd5c
luetoothAdapter.java
luetoothProfile.java
Bluetooth.aidl
f5fb6c8ce36a98da47f32f4142d372bd5f650bfa 03-Aug-2011 Jaikumar Ganesh <jaikumar@google.com> Enforce permission for changeApplicationState function.

The ADMIN permission is for use cases where we want to manage BT connection
at a deeper level. So just the Bluetooth permission is good enough here.

Change-Id: Iddd038fe9f9a26f155b4edc9484ba1fe27b178ba
luetoothAdapter.java
bbd86750570ff75e428b3810dc2e65db558c14b2 02-Aug-2011 Jaikumar Ganesh <jaikumar@google.com> Fix tethering using BT.

1. Since Input device runs in Bluetooth Service, avoid the proxy call.
2. Accept or reject incoming tethering connections.

This broke because of incoming connection request change for phonebook, HID,
A2DP.
Change-Id: Ia8c537bb79e4dbc66cfb6b23dcad4f99dbf950b3
luetoothDeviceProfileState.java
luetoothInputDevice.java
Bluetooth.aidl
6903a7de88e32e04965f41f1cf6371d855cdfa88 29-Jul-2011 Matthew Xie <mattx@google.com> Merge "Provide an API to set the friendly name of a remote device."
269e81a563cfe080d7f241d0d46411d3c946c111 27-Jul-2011 Matthew Xie <mattx@google.com> Provide an API to set the friendly name of a remote device.

BluetoothDevice setName overwrite the locally cached remote name.
The changed name is saved in the local storage so that the change
is preserved over power cycle.
bug 5081605
Change-Id: I486966033828d153bfb1076a99e274c8a7f41636
luetoothDevice.java
Bluetooth.aidl
ef2cb7c93a99096799d415e721dda46d1bf7a005 22-Jul-2011 Jaikumar Ganesh <jaikumar@google.com> Add ability to turn BT on / off on a per application basis.

This changes adds an API for system applications
to enable bluetooth without all the side effects like
auto connection to headsets etc.

Also some tweaks to the adapter state machine

Change-Id: Ib9f22d548a26d72334b300101c8eb0d80f08a4bb
luetoothAdapter.java
Bluetooth.aidl
BluetoothStateChangeCallback.aidl
ac4159549c10dbe428d42980278c0e43ecc8d93f 21-Jul-2011 Jaikumar Ganesh <jaikumar@google.com> Merge "Incoming connection dialog tweaks."
e3dc975acb716eede4abb0d1f4a5f969f92fc307 21-Jul-2011 Matthew Xie <mattx@google.com> when disconnectHeadsetInternal, allow it when the BT is not disabled

The old code allowed the disconnection only when BT is enabled. This
caused a bug during BT turning off that Headset connection failed
to disconnect.
Change-Id: Iba15a1595b6987064f071ad90bbb126a6edfe6b5
luetoothHeadset.java
d3728cb32fbd0a85bc77f4bcbdfea386ede2c75f 20-Jul-2011 Jaikumar Ganesh <jaikumar@google.com> Incoming connection dialog tweaks.

Don't show incoming connection dialog when the device shows
the pairing dialog - this means that the device has already been
trusted by the user.

Change-Id: I98a9f56528f6b62d0f824bbc7612aaa0077ba1e6
luetoothDeviceProfileState.java
5623b074977d55a61f29099f44670916c6282e51 11-Jul-2011 Jaikumar Ganesh <jaikumar@google.com> Merge "Bluetooth Health APIs"
fb658c72a3a76dac334c39070d1501a2575c1069 07-Jul-2011 Jaikumar Ganesh <jaikumar@google.com> Bluetooth Health APIs

1. Remove the check of configs in BluetoothHealth.
This check is useless since BluetoothHealth is a proxy.

2. Add a wrapper and a callback class. We shouldn't expose
Binder interfaces as public APIs.

Change-Id: If62620b4251cf93f3f97d2fe63099e40fae7da4d
luetoothHealth.java
luetoothHealthAppConfiguration.java
luetoothHealthCallback.java
Bluetooth.aidl
6d8b80dd8c56dba02dcb6e64ace37fb85aeee1f5 08-Jul-2011 Ben Dodson <bjdodson@google.com> Get server's listening channel

Change-Id: Ia1cb3486a4ba502185efdcf6d7bcf0f37bb55261
luetoothServerSocket.java
a0c680393f2dd03a937c598b2cb9abf98a58152c 26-Jun-2011 Matthew Xie <mattx@google.com> Incoming Bluetooth Connection requests - dialog.

This sends the intents to the Settings app to show
the dialogs for the incoming connection requests.
Includes down merged contributions from Jaikumar Ganesh.

Change-Id: Ic8b857aad3554315aae39a0e871eb94d0ac98a91
luetoothA2dp.java
luetoothDevice.java
luetoothDeviceProfileState.java
luetoothHeadset.java
luetoothInputDevice.java
Bluetooth.aidl
BluetoothA2dp.aidl
BluetoothHeadset.aidl
2ea1e85dcb57d17f5782dbafa1d25eb51c630e4b 02-Apr-2011 Jaikumar Ganesh <jaikumar@google.com> Implement APIs for Bluetooth Health profile.

This first patch implements all the APIs.
The APIs wil be made public soon. The data specification
API will be submited in another patchset.
Change-Id: I2462683b7e07380e2c42474b0036b34d03b4bed1
luetoothAdapter.java
luetoothHealth.java
luetoothHealthAppConfiguration.aidl
luetoothHealthAppConfiguration.java
luetoothProfile.java
Bluetooth.aidl
BluetoothHealthCallback.aidl
f8789167e903b637b1dbe8f710e7c66c4cfd74fd 26-May-2011 Jaikumar Ganesh <jaikumar@google.com> Refactor Bluetooth Profile.

Move connect / disconnect / set and get priority
functions down the interface as they are not generic enough
for all profiles.

Change-Id: I2656e1bdbc8046c53bb0dfbd9172f5f10b57aa7d
luetoothA2dp.java
luetoothHeadset.java
luetoothInputDevice.java
luetoothPan.java
luetoothProfile.java
830d8c5fb397f11d7dd2be31b20a8889797eb4b1 06-Jun-2011 Jaikumar Ganesh <jaikumarg@android.com> am 5aaed097: am 58ada2f3: am 94062517: Merge "Require bonding and encryption for PBAP server"

* commit '5aaed0970be451479a07b2423e709026dec6611b':
Require bonding and encryption for PBAP server
5aaed0970be451479a07b2423e709026dec6611b 06-Jun-2011 Jaikumar Ganesh <jaikumarg@android.com> am 58ada2f3: am 94062517: Merge "Require bonding and encryption for PBAP server"

* commit '58ada2f3bbab749fb5a813fb8f82eee347080405':
Require bonding and encryption for PBAP server
efc1d16374955f04d713c770ab47d90d190afe83 21-Mar-2011 Albert Mojir <albert.mojir@sonyericsson.com> Bluetooth: correcting return value from cancelDiscovery

BluetoothAdapter.cancelDiscovery was previously always
returning false.

Change-Id: Ic1fd134d4b710438d95c5b8ca009104529dd1bf5
luetoothAdapter.java
ceb6c9f517ede73bfb677e55fda9d9db6089ae69 04-May-2011 Matthew Xie <mattx@google.com> Add public api BluetoothSocket.isConnected.

It's a convenent function to get the connection status of the bluetooth
socket, ie, whether there is an active connection with remote device.
bug 2149043

Change-Id: I4ca4e98c646f70746d838632f3035376b22d579b
luetoothSocket.java
e3b9dc107ea10645e064581460829d262c911f1c 21-Mar-2011 Mathias Jeppsson <mathias.jeppsson@sonyericsson.com> Require bonding and encryption for PBAP server

The Phonebook Access Profile specification requires bonding and
encryption. For devices not supporting SSP (Secure Simple Pairing),
InsecureRfcomm will require neither. Adding EncryptedRfcomm to force
bonding and encryption but not requiring authenticated link key.

Change-Id: If47cca9c5ffd89358bcd61d64f7785d17e0ca7cc
luetoothAdapter.java
343c1ad7200619230a55caa6aa8a9d041e62b29d 19-Apr-2011 Wink Saville <wink@google.com> am 37677849: am 64c42cae: Rename HierarchicalStateMachine and HierarchicalState to StateMachine and State.

* commit '37677849998e6c9a39afe0a730b2f0131a371f3b':
Rename HierarchicalStateMachine and HierarchicalState to StateMachine and State.
37677849998e6c9a39afe0a730b2f0131a371f3b 19-Apr-2011 Wink Saville <wink@google.com> am 64c42cae: Rename HierarchicalStateMachine and HierarchicalState to StateMachine and State.

* commit '64c42cae4482fe0157e977b8ddd0f2c2436b3f31':
Rename HierarchicalStateMachine and HierarchicalState to StateMachine and State.
64c42cae4482fe0157e977b8ddd0f2c2436b3f31 18-Apr-2011 Wink Saville <wink@google.com> Rename HierarchicalStateMachine and HierarchicalState to StateMachine and State.

Change-Id: Ib4b33894da75f5f156066092fb145b478e52f7d7
luetoothDeviceProfileState.java
luetoothProfileState.java
80f7c594fae3f1b19e3ea78938de450418fe183c 07-Apr-2011 Robert Greenwalt <rgreenwalt@google.com> am f4a29403: resolved conflicts for merge of 70c3d1c2 to honeycomb-plus-aosp

* commit 'f4a29403ae5b6d3e8e754a025d33f0c33adecb21':
Add external dependency API.
f4a29403ae5b6d3e8e754a025d33f0c33adecb21 07-Apr-2011 Robert Greenwalt <rgreenwalt@google.com> resolved conflicts for merge of 70c3d1c2 to honeycomb-plus-aosp

Change-Id: I0962138f6ecb1ed54fda25524d8850b086f13c4f
d55a6b498d66d8fc415908ecf63e50f46cce67e8 25-Mar-2011 Robert Greenwalt <rgreenwalt@google.com> Add external dependency API.

An APN will not be connected to if some external dependency is not met.

bug:3486704
Change-Id: I7d94df343b260013efd11faa978deb13f07f1389
luetoothTetheringDataTracker.java
6f7a9736602ba1f1dc5a16542aa947861a520ec5 06-Apr-2011 Jaikumar Ganesh <jaikumar@google.com> Check if BT is disabled or not when sending audio state.

When BT is turning off we need to send the audio state intent.
We were not doing this since the state was turning off.

The check was added to prevent misuse of public APIs, since
these functions are used internally, its not a problem.

Change-Id: I9834cbff741722bf99c2875fa65c0617b7b4807b
luetoothHeadset.java
8698c91204d56ea52a4393cd8cf91c9a3a49c4c8 17-Mar-2011 Brad Fitzpatrick <bradfitz@android.com> am b8332786: am d973bed3: Merge "Removing dead store; it was likely a relict of debuging code."

* commit 'b8332786e3ac6d58504a7c3128e94e63255b3515':
Removing dead store; it was likely a relict of debuging code.
f1aa297b1788fa4210a3850080e2f632025909c0 22-Feb-2011 Jozef BABJAK <jozef.babjak@gmail.com> Removing dead store; it was likely a relict of debuging code.

Change-Id: I4daab1359d7c4b300ef61e3de1578d9fecb6f8da
luetoothDeviceProfileState.java
9a62c9cd6585656f4e29ba971b1f88a510d674bd 09-Dec-2010 Jake Hamby <jhamby@google.com> Refactor android.server.BluetoothService classes.

Several cleanups to BluetoothService:
- Move BluetoothService.BondState inner class to top level.
- Extract adapter and remote device properties cache management
logic into two new classes: BluetoothAdapterProperties and
BluetoothDeviceProperties.
- Add getter methods for other classes in the package to access
the new properties cache objects for multi-part operations.
- Inline log() method in BluetoothService and selected the
appropriate Log method (Log.d, Log.w, Log.e) for each message.
- Refactor dump() method into smaller sized pieces.
- Clean up logic of updateCountersAndCheckForConnectionStateChange()
method for better readability.
- Change sendConnectionStateChange() to return instead of sending
an intent if the current or previous state values are invalid.
Previously the code sent an intent with -1 for the invalid state.
- Added Javadoc comments to document the methods that are called from
native Bluez code.
- Fixed some typos and code style issues.

Original Change by: Jake Hamby
Modified by: Jaikumar Ganesh

Change-Id: I76ebac00ecd29566dcb2d1ad3e7a486b7530ce24
luetoothDeviceProfileState.java
74ef1199459629c5dd9f272f8cd706d82cdfeeb1 23-Feb-2011 Jaikumar Ganesh <jaikumar@google.com> Make BluetoothPan inherit from BluetoothProfile.

Change-Id: Ibd3e24e391be93ebe2cf975bd075efb68e10c1ff
luetoothAdapter.java
luetoothPan.java
luetoothProfile.java
luetoothTetheringDataTracker.java
Bluetooth.aidl
4ab0e7746fe74a9e4d75d374f73b7af87420b2f6 18-Feb-2011 Jaikumar Ganesh <jaikumar@google.com> Make BluetoothInputDevice inherit from BluetoothProfile.

This makes it in sync with BluetoothHeadset and BluetoothA2dp profiles.

Change-Id: I3ddb1d18b04aacb173b7bc376bca21c277a6afe4
luetoothAdapter.java
luetoothDeviceProfileState.java
luetoothInputDevice.java
luetoothProfile.java
luetoothProfileState.java
Bluetooth.aidl
17689de1cf41017ecc09a75d9603a91841b8c84d 02-Feb-2011 Jaikumar Ganesh <jaikumar@google.com> am 25bbfda2: am 485d577a: Merge "Fix BluetoothAdapter Connection change intent doc." into honeycomb

* commit '25bbfda2442e6d8f55bdc8e2dd0eca18b0ba594b':
Fix BluetoothAdapter Connection change intent doc.
0b5b35f8a12e9f7e85df6b9b86597ebc84584d97 02-Feb-2011 Jaikumar Ganesh <jaikumar@google.com> Fix BluetoothAdapter Connection change intent doc.

Bug: 3414206
Change-Id: Icf87e28e11b0b5072fe546225bbfb1dc68487ef0
luetoothAdapter.java
c42eb2cce70aa4e985615ef9d4cddfff435f7b7f 27-Jan-2011 Scott Main <smain@google.com> am d2b87091: am 0f2e2b8b: Merge "Update package descriptions with editorial revisions. Notably, this removes exessive info about resources from the content package, because it\'s not a good location and the info is avilable in the dev guide, but also added some of the

* commit 'd2b87091cc30c575496eb78ebea88297da775359':
Update package descriptions with editorial revisions. Notably, this removes exessive info about resources from the content package, because it's not a good location and the info is avilable in the dev guide, but also added some of the info to the Resources class description.
f4f05b8f24183b9e0d6959fe8b71fb88543edd9b 07-Jan-2011 Scott Main <smain@google.com> Update package descriptions with editorial revisions.
Notably, this removes exessive info about resources
from the content package, because it's not a good location
and the info is avilable in the dev guide, but also
added some of the info to the Resources class description.

Change-Id: Ie78af26c9cec66314deb98e53078f48e16c08e70
ackage.html
3b4c86af20892b6f1651d0f8de31817f0832d2a9 26-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> am 48f73779: am e9b644fc: Merge "Fix some unmatched javadoc tags." into honeycomb

* commit '48f737798070471cefeeaf418c75ea55f8b925e9':
Fix some unmatched javadoc tags.
9e751f0fb55214feec7cf3aac2738739e49f7867 26-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> Merge "Make the interface with DHCP IPv6 capable."
0706fed52075f7f2b25101a40287519ac18d3184 26-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> Fix some unmatched javadoc tags.

Bug: 3392175
Change-Id: I84aa86c07060bc4ba399fd5c8f7cda162b432031
luetoothA2dp.java
luetoothHeadset.java
0216e618198393bfd7ac0625fa6ad251d5ea682f 15-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> Make the interface with DHCP IPv6 capable.

It doesn't work (yet) for IPv6, but we can remove v4-centric notions from the framework.

bug:2542681
Change-Id: I21c058f5c88d07706c9265bf0ea902fc90357e56
luetoothTetheringDataTracker.java
5a9ac240feffa84773c322a03b1cdd6e99f0e21c 26-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> Revert "Temporary Changes for certification of SCO."

This reverts commit 75c2701454f4506664d9056988c8ce5fd0ca73ba.

Change-Id: Ic63cdbbb06b9ed2d9c48e8b29cc376059ecadebf
luetoothHeadset.java
BluetoothHeadset.aidl
c8fa4ff838a0c3d2c67db65540fa751e5abe27ed 26-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> Improve readability of java docs for the public APIs.

Change-Id: I0a0f1be04ed2ea2c14498a1a2ed4b050191ec95b
luetoothA2dp.java
luetoothDevice.java
luetoothHeadset.java
luetoothProfile.java
dde68c64fd8e97a592633ec4c09283ec928e5697 24-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> Rename virtual call API to ScoUsingVirtualCall.

This API makes more sense with regard to headset profile.
Bug: 3381532

Change-Id: Ife07d101a3b04bcddb31e7ae86712e1d97a660c5
luetoothHeadset.java
BluetoothHeadset.aidl
f643974954c47c95cd84c774db7f1e3997ee9c96 22-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> am 1c9761e3: Merge "Do Not Merge Connect other profiles when priority is auto connect." into gingerbread

* commit '1c9761e30d6eccfe104928cdc961ed1d3a5e2f6b':
Do Not Merge Connect other profiles when priority is auto connect.
8db58ea52c618337fa91289aa42572599d58dafc 22-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> Merge "Connect other profiles when priority is auto connect." into honeycomb
a8d18865a48932158270d59cd46f8d95bdbfbe5a 22-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> Connect other profiles when priority is auto connect.

ACL auto connection was removed so other profiles
won't auto connect when priority was auto connect.

Reduced connect other profiles time delay.

Bug: 3281016
Change-Id: I8d98fd0d9bace193d619d7f241fff22f07e3e935
luetoothDeviceProfileState.java
40e6c210f88bfde3f5bc0faa93de0910f1a8181b 22-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> Do Not Merge Connect other profiles when priority is auto connect.

ACL auto connection was removed so other profiles
won't auto connect when priority was auto connect.

Reduced connect other profiles time delay.

Bug: 3281016
Change-Id: Ic56ca6e95f618f02bc316d1f80014e58c4b6c3bc
luetoothDeviceProfileState.java
c4cc3ea48add3b7a63a1a97fc3a4c89b24217604 22-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> Merge "Temporary Changes for certification of SCO." into honeycomb
75c2701454f4506664d9056988c8ce5fd0ca73ba 20-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> Temporary Changes for certification of SCO.

Bug: 3349475
Change-Id: I555b127a1d9218494cd05c07c9e9f29628f3bc74
luetoothHeadset.java
BluetoothHeadset.aidl
299ae67d031ac5b540324433c365b9f4f3811880 20-Jan-2011 Scott Main <smain@google.com> docs: small javadoc, but also make the existing getProfileProxy docs visible... had wrong comment tag

Change-Id: Ia4b2178057c0263ec8f835342815082de87b3af1
luetoothAdapter.java
fbe807d064ada99211b102914df514aa562256f8 19-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> Make connection / disconnect failure more robust.

Add error codes so that the states can be tracked better.

Change-Id: Ic07a5d34589134b68dedeb4803ccb523aa01b567
luetoothInputDevice.java
luetoothPan.java
ef6abd8a3e4b05cb9d94f29f4e8ffc7bb2ecec77 15-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> am a788a943: Merge "Do Not Merge: Expose insecure rfcomm Bluetooth API." into gingerbread

* commit 'a788a9430956dabbc1387e5cccc15f9f41639c95':
Do Not Merge: Expose insecure rfcomm Bluetooth API.
a788a9430956dabbc1387e5cccc15f9f41639c95 15-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> Merge "Do Not Merge: Expose insecure rfcomm Bluetooth API." into gingerbread
a3363ef2cdf27e8d652297e9b916d085c5550a28 14-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> Do Not Merge: Expose insecure rfcomm Bluetooth API.

This complements the secure rfcomm API.
The link key is unauthenticated and is subject to MITM attacks.
The link key may be encrypted depending on the type of Bluetooth device.
This helps apps which don't need the extra security or
have their own security layer built on top of the rfcomm link.

Bug: 3352266

Change-Id: I633fd0372e5e23288d6fec950dd1abc2896031f1
luetoothAdapter.java
luetoothDevice.java
d1287f5ef091bd41ec902d6a83284db21a4dcabb 14-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> Fix bug in handling connect/disconnect multiple devices.

Multiple HID devices can be connected. There is no pointing
maintaining the global state. Check individual device state.

Bug: 3350904

Change-Id: I03d9a6015e39e4f9d7f68cc8bbdb19731129b4e6
luetoothDeviceProfileState.java
471de1f5b3cc629739d8315ff195d6af928e7ae4 12-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> am c8f42fb6: Merge "DO NOT MERGE: Remove auto connection on ACL connection." into gingerbread

* commit 'c8f42fb69867f171c04013b1b1a8f7e897ae3685':
DO NOT MERGE: Remove auto connection on ACL connection.
d50ac2966edd9c58d8026a624fd795bf54311158 07-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> DO NOT MERGE: Remove auto connection on ACL connection.

There is no need for this and causes problems with certian cars.

Fixes bug: 3281016

Change-Id: Idb65bbd4c8573923ebf82195b828ae071cb20aef
luetoothDeviceProfileState.java
ef28e7eb527b0e4beffe9788b105e57e9675e352 07-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> Remove auto connection on ACL connection.

There is no need for this and causes problems with HID.
Its the reponsibility of the remote device to initiate connection
when back in range.

Fixes bug: 3282682
Change-Id: I9fed15d4ce0ae4539059001db54cc302a55e2015
luetoothDeviceProfileState.java
c88b0c62c52ab76f1277f3c999d795d8ba527028 05-Jan-2011 Jaikumar Ganesh <jaikumar@google.com> Follow the spec recommendation for keyboard pairing.

Generate a variable pin and show it to the user.

Change-Id: Id4aae7a16f25c67d6c6ead6fd936cb14087f3c7a
luetoothClass.java
luetoothDevice.java
6eef14a7fcf6b6338f21f760830abf369ca0137d 23-Dec-2010 Jaikumar Ganesh <jaikumar@google.com> Expose insecure rfcomm Bluetooth API.

This complements the secure rfcomm API.
The link key is unauthenticated and is subject to MITM attacks.
The link key may be encrypted depending on the type of Bluetooth device.
This helps apps which don't need the extra security or
have their own security layer built on top of the rfcomm link.

Change-Id: I71b2fa8de469ef98faa204b4dafac18a8e21d0d9
luetoothAdapter.java
luetoothDevice.java
15c7439acb22ab079dd2ebe42bdf0d2ffd525c5d 22-Dec-2010 Jaikumar Ganesh <jaikumar@google.com> Add TYPE_BLUETOOTH network interface for reverse tethering.

Change-Id: I2aa61ce15f57aea9e8fd3a4cb56799c8bc51e998
luetoothTetheringDataTracker.java
5200c8ab721b56025340306bdecca651e6bf2f12 14-Dec-2010 Jaikumar Ganesh <jaikumar@google.com> Add EXTRA_LOCAL_ROLE to Pan State change intent.

This will help apps distinguish between reverse and normal tethering.

Change-Id: I5327ad75dc2cbf478e4f7c2cd6ef1dbe8fba9e93
luetoothPan.java
2d1fc4e3f5eb612f9ef8a50080310ced1dfaaadf 14-Dec-2010 Jaikumar Ganesh <jaikumar@google.com> Remove delay with auto connection.

SDP records are now registered with a dbus call so we don't have to wait
for initiating auto connections.

Also reduce time to connect other profiles case by 2 secs.

Change-Id: I8f0eab6a95d3bfaf11a8eb7495a024949639d7fc
luetoothDeviceProfileState.java
84690c88f37f395094147d27ace8319a2803a522 10-Dec-2010 Jaikumar Ganesh <jaikumar@google.com> Add direct calls to Bluez to add SDP records.

This helps Settings app to enable just the Headset service.

Change-Id: Ia9c39467df1e83d665e377313e16e6c54991f6d6
luetoothUuid.java
1c96a00685f48aaa7cbe1ea03b4f031089631e89 24-Nov-2010 Jaikumar Ganesh <jaikumar@google.com> Fix some formatting issues.

Review comments from a previous review.

Change-Id: Ifa6136f9bc5590ffb6a777240ad1e6607b616ca6
luetoothDeviceProfileState.java
58b93c36409c7fb91a644605f004b6d247d9b540 24-Nov-2010 Jaikumar Ganesh <jaikumar@google.com> Update BT code for voice capability cases.

1. Disable PBAP and Headset / Handsfree records.
2. Add API to query for local adapter UUIDs.

Change-Id: Ic84ba6a49738adc89a8695d3a4890f08562e0621
luetoothAdapter.java
luetoothDeviceProfileState.java
Bluetooth.aidl
b0a1d01b4c044a0779cfe006e204bac468459802 11-Nov-2010 Jaikumar Ganesh <jaikumar@google.com> Make AUDIO_STATE_CONNECTING in BluetoothHeadset public.

As the SCO connection is done on a separate thread, this
state is needed to prevent silent failures in case of APIs like
voicerecognition.

Change-Id: Id08725323a2c847df4d3bd9f60e42fde46100707
luetoothHeadset.java
f2e6b13620f3ebbb94166834abaaabcc08a403b7 27-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> Add APIs for starting and stopping a virtual call.

This API is useful for cases where the user wants to play
their voicemail, for example, through their Bluetooth headsets.

Original Change by: kausik@broadcom.com

Change-Id: I6bc8929c359d698a1bacdefab4425e3a0ac5d8dd
luetoothHeadset.java
BluetoothHeadset.aidl
30d181690e48b26cdfae3b144d23f1e16c75da37 01-Nov-2010 Jaikumar Ganesh <jaikumar@google.com> Add STATE_AUDIO_CONNECTING state.

Why is it needed: SCO audio connections can fail.
Currently no indication is given to clients which are waiting
for SCO connections. This was working fine before because
SCO connections where blocking calls, which was wrong in itself.

Change-Id: Ic449b2db8506a7a5ae6be6c68715f1a7343f9e40
luetoothHeadset.java
BluetoothHeadset.aidl
7a0f816916abb200d9337a5afde5d6d2a637a20a 01-Nov-2010 Jaikumar Ganesh <jaikumar@google.com> Disconnect PAN and Input devices on BT disable.

Also, add a missing break.

Change-Id: I228f80a4223de20e60d2f3828e3f63bdc14f5afc
luetoothDeviceProfileState.java
e12774d4a81b3658de65e9d2848a7757d8612e0f 29-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> Merge "Add an API call to get the ConnectionState of the Bluetooth Adapter."
470132509f698f36290535238c5369482e98d569 28-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> Fix incoming connection problem

This fixes the incoming auto connection of profiles with certain remote devices.

Bug: 3136095
Change-Id: If26b5aa91403c0c7bd547e2970ee5bf2ac381416
luetoothDeviceProfileState.java
70a68f9544426fa47ba7284d80a95807e820e17a 28-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> am 025f78eb: Merge "DO NOT MERGE Fix auto connection with headsets which don\'t send incoming connections for all profiles." into gingerbread
28967499d7433f2cc498e7432707e2d5991a408a 28-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> DO NOT MERGE Fix auto connection with headsets which don't send incoming
connections for all profiles.

Bug: 3136095
Change-Id: I48f36b99f3f7619a6a18c6adc2057c9d6d23c3e3
luetoothDeviceProfileState.java
c53cab20b225ba69057441ecb06db6478ab8ff9b 27-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> Add an API call to get the ConnectionState of the Bluetooth Adapter.

Change-Id: Icd87d7720189034946aaa98e1a6c5d03ef4219e5
luetoothAdapter.java
Bluetooth.aidl
a46f2fb152355fe591f9dddeb41f01fef5ccad1d 21-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> Implement ACTION_CONNECTION_STATE_CHANGED intent.

Change-Id: I6b5783c189c9796ebd85d9d54bdcb07949bef27e
Bluetooth.aidl
551402930426725760c3bedac3a15e0063cb2ad3 26-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> Fix docs builds.

Change-Id: I764bd0f0f6994cc468b7ebbea4a3dc7a44b9f89d
luetoothHeadset.java
e775b3daab9766bce9ec2d01fe7d652c4a782b6b 29-Sep-2010 Jaikumar Ganesh <jaikumar@google.com> Expose Vendor Specific Headset Event Intent.

The Bluetooth Headset spec doesn't cover all cases.
For example, there is nothing defined to show the battery status of
the headset on the phone. This intent allows 3rd party applications
to communicate effectively with vendor headsets. For example, Plantronics
has an app for Android headsets and when used with Plantronics
headsets, they will be able to use extra information from the headset.

Change-Id: Ib997327103cbbe57d64c52ba27f74162b6769798
luetoothAssignedNumbers.java
luetoothHeadset.java
5a1e4cf83f5be1b5d79e2643fa791aa269b6a4bc 19-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> Update BT APIs return type from Set to List.

Change-Id: Ia27220dd26cde13007f6938c830517ee7f6968ce
luetoothDeviceProfileState.java
luetoothInputDevice.java
luetoothPan.java
Bluetooth.aidl
03cd78cf5e51c3adb78d2e3d314838dcf3e36b26 19-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> Convert return type of APIs from Set to List.

Most of the time it will either be empty or have 1 device.
Using list makes it much a better API and since its supported
by the AIDL format, the code becomes much nicer.

Change-Id: I5a2508b33ba754fc8cc738409d658e1235aaf2cf
luetoothA2dp.java
luetoothHeadset.java
luetoothProfile.java
BluetoothA2dp.aidl
BluetoothHeadset.aidl
dbb78f0e4ee3a1ba3e3418b0c1bf8b51e4fa2019 17-Oct-2010 Scott Main <smain@google.com> am 81df9841: am 2c1dab44: am fda5b19c: Merge "docs: fix typo; surface dev guide link in package description" into froyo

Merge commit '81df9841c64e417fe2adfab0e8d694af09e07c0d'

* commit '81df9841c64e417fe2adfab0e8d694af09e07c0d':
docs: fix typo; surface dev guide link in package description
81df9841c64e417fe2adfab0e8d694af09e07c0d 16-Oct-2010 Scott Main <smain@google.com> am 2c1dab44: am fda5b19c: Merge "docs: fix typo; surface dev guide link in package description" into froyo

Merge commit '2c1dab44834fb20deda9f380dae1bd7c1826b40b' into gingerbread-plus-aosp

* commit '2c1dab44834fb20deda9f380dae1bd7c1826b40b':
docs: fix typo; surface dev guide link in package description
db3694d03068aca596feee7326d3c14eb71d8dc9 15-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> am a905d955: am a31cbd61: Merge "Remove STOPSHIP and reduce log spam." into gingerbread

Merge commit 'a905d9551103c5be465429ffeb0352b78058457e'

* commit 'a905d9551103c5be465429ffeb0352b78058457e':
Remove STOPSHIP and reduce log spam.
2c1dab44834fb20deda9f380dae1bd7c1826b40b 15-Oct-2010 Scott Main <smain@google.com> am fda5b19c: Merge "docs: fix typo; surface dev guide link in package description" into froyo

Merge commit 'fda5b19c757645e957c2a224f269aefe39fb1e1c' into gingerbread

* commit 'fda5b19c757645e957c2a224f269aefe39fb1e1c':
docs: fix typo; surface dev guide link in package description
36cdecd89dbc3eb503197414f525e30ee241ba66 14-Oct-2010 Scott Main <smain@google.com> docs: fix typo; surface dev guide link in package description

Change-Id: I2dc09bb6b79cbe3f80819d6193eb0d8a3565310d
ackage.html
72cd64b20ed7118a6c0ed12f4924659abb5dcd0d 15-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> resolved conflicts for merge of bbb90d13 to master

Change-Id: I85de73f6e11e7547a006d41ca49021bca19af14b
c8e87e3ce64bc623b856c12cc63e4a46029da743 15-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> am 373a6961: am 64f42803: Merge "Bluez doesn\'t handle disconnect while connecting well. Defer the message." into gingerbread

Merge commit '373a69614e534ae04dddd79c92933b6d8969fad7'

* commit '373a69614e534ae04dddd79c92933b6d8969fad7':
Bluez doesn't handle disconnect while connecting well.
5b9895c0168e626de5490adf07ad689fdde5c517 15-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> Merge "Disconnect PBAP while disconnecting HFP profile."
2beaf7316facf9230b79a0dec85266e0fb487e8f 15-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> Disconnect PBAP while disconnecting HFP profile.

PBAP profile is associated with HFP profile. Disconnect PBAP
profile while disconnecting HFP profile. We ever never doing this
and were expecting the remote end to do it. So when the user
disconnects a headset, we will end up with the ACL link still up
because PBAP has not been disconnected.

This is little bit of a hack till PBAP profile is converted to
use the new profile APIs.

Change-Id: I04821daae6588955fbfea01472e6a1b6f9212608
luetoothDeviceProfileState.java
0b9ba91fa54f58ef3272e0f252ac16691731a788 14-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> Merge "Add function to check for AVRCP target to send volume keys."
41d5c805d96aef0aaa9a2aaa86ccc4b77ca75e11 14-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> Add function to check for AVRCP target to send volume keys.

Currently, when A2DP is connected and the user changes volume
keys on the device, we just change the volume on the device.
We are not supposed to do that. The white paper recommendation
is to keep the volume stream at max and just send the volume
keys over. But then not all A2DP headsets act as AVRCP targets,
hence check for that.

So now the media code should use the API and not change the volume
at the device but just send the keys.

Bug: 3071356
Change-Id: I03a8b6f7619cf860c4e63979bf4903ded9ecd314
luetoothA2dp.java
a905d9551103c5be465429ffeb0352b78058457e 14-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> am a31cbd61: Merge "Remove STOPSHIP and reduce log spam." into gingerbread

Merge commit 'a31cbd61bc53730d756464b0c273475c4f738066' into gingerbread-plus-aosp

* commit 'a31cbd61bc53730d756464b0c273475c4f738066':
Remove STOPSHIP and reduce log spam.
bbb90d134a3f3a8561a6b3315b6944be939b3778 14-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> am c008ca96: Merge "Work around for errant headsets." into gingerbread

Merge commit 'c008ca96bb32289958010dcf8f247c35ab9b1f18' into gingerbread-plus-aosp

* commit 'c008ca96bb32289958010dcf8f247c35ab9b1f18':
Work around for errant headsets.
bdb1d9320b49c286935b04e286ae41734b8f7237 14-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> Remove STOPSHIP and reduce log spam.

We still need some logs, as it helped me fix the errant headset bug.

Bug: 3095000
Change-Id: If12601430e6dc30490df1ff86fc3f9d4d455e6d5
luetoothDeviceProfileState.java
luetoothProfileState.java
70a053bf1ba331d727e2fbfca8f39d96b3b324b4 14-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> Work around for errant headsets.

1. Some headsets send an AVCTP connection before an AVDTP connection
When that AVCTP connection fails, we get stuck in IncomingA2DP state
because we don't handle AVCTP signals for now.
We need to handle the signals and fix it better.

2. Also when ACL gets disconnected, reset state i.e
when the low level connection disconnected reset our state.
This is like a fail safe in case we get stuck.

Bug: 3051490
Change-Id: Ibcf188103999ffb1e08c36c2554504c639fb7f50
luetoothDeviceProfileState.java
luetoothProfileState.java
373a69614e534ae04dddd79c92933b6d8969fad7 13-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> am 64f42803: Merge "Bluez doesn\'t handle disconnect while connecting well. Defer the message." into gingerbread

Merge commit '64f4280313c5b498a3238d174c4d14ca2187604b' into gingerbread-plus-aosp

* commit '64f4280313c5b498a3238d174c4d14ca2187604b':
Bluez doesn't handle disconnect while connecting well.
adbda6f094bf957e2943f80ef63d4530f6fcfc5a 13-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> Bluez doesn't handle disconnect while connecting well.
Defer the message.

Bug: 3076404
Change-Id: Id62e1008346f492a85e714240a832a061def1786
luetoothDeviceProfileState.java
f5cae7d1c516ad233d7ec833c23c046e2501ec56 08-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> am 38702d5f: Merge "DO NOT MERGE: Disconnect PBAP while disconnecting HFP profile." into gingerbread

Merge commit '38702d5f1c42e2dfcc8fa5472c8fe842b4056914' into gingerbread-plus-aosp

* commit '38702d5f1c42e2dfcc8fa5472c8fe842b4056914':
DO NOT MERGE: Disconnect PBAP while disconnecting HFP profile.
59453c947a2d4d64e2f4a4216a479cd33728439c 04-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> DO NOT MERGE: Disconnect PBAP while disconnecting HFP profile.

PBAP profile is associated with HFP profile. Disconnect PBAP
profile while disconnecting HFP profile. We ever never doing this
and were expecting the remote end to do it. So when the user
disconnects a headset, we will end up with the ACL link still up
because PBAP has not been disconnected.

This is little bit of a hack till PBAP profile is converted to
use the new profile APIs.

Change-Id: I5f68b228fd5e607605928a52343ad4b86c58ac0b
luetoothDeviceProfileState.java
980d40b568bf976eed8de7c035c2e30ddc67fa89 01-Oct-2010 Jake Hamby <jhamby@google.com> resolved conflicts for merge of 738aadd7 to master

Change-Id: I8810cc6dbd532de002d6a623ad93e86afb48c0b4
738aadd70fb96491e34645e78241eeb04ee83460 01-Oct-2010 Jake Hamby <jhamby@google.com> resolved conflicts for merge of 0a972acf to gingerbread-plus-aosp

Change-Id: Id8dc5038edc214b4433bdf690243f2f5fe5b4812
f51eadaf1f83abfe16a609a4ded6d789494689b2 21-Sep-2010 Jake Hamby <jhamby@google.com> Typo fixes in comments and minor code cleanups.

* Fix some typos in Javadoc and log messages.
* Remove redundant initializer in BluetoothAdapter.readOutOfBandData()
* Use canonical "UTF-8" charset name instead of "UTF8" in
BluetoothDevice.convertPinToBytes()

Change-Id: I58cd5dc48a7ad0053d204c5f590b4b3d438d8672
tCommandResult.java
tParser.java
luetoothAdapter.java
luetoothAudioGateway.java
luetoothClass.java
luetoothDevice.java
luetoothDevicePicker.java
luetoothHeadset.java
luetoothPbap.java
luetoothServerSocket.java
luetoothSocket.java
eadsetBase.java
96a79830ea1ae3ab3d6d3cce2bd1397fcd40ea0e 28-Sep-2010 Jaikumar Ganesh <jaikumar@google.com> Update code for new BT public APIs.

Change-Id: Id730fb6226db59f3a0416111c4790653c2fccb0b
luetoothDeviceProfileState.java
luetoothProfileState.java
BluetoothA2dp.aidl
BluetoothHeadset.aidl
62c37efc9e894809b29a004c142a8e0a6b374db7 25-Aug-2010 Jaikumar Ganesh <jaikumar@google.com> New public APIs for BluetoothA2dp and BluetoothHeadset profiles.

Change-Id: I1cc4b109542dfd62473cb95797c8c3d0d15725f4
luetoothA2dp.java
luetoothAdapter.java
luetoothHeadset.java
luetoothProfile.java
14769a86903973b7aef7bb6ec52eb46a34e30e36 17-Sep-2010 Jake Hamby <jhamby@google.com> am eb3b40af: am 0f584306: Fix Bluetooth Javadoc to clarify the maximum device name length.

Merge commit 'eb3b40af974d818cab66bf0a728c8bdec4f6f715'

* commit 'eb3b40af974d818cab66bf0a728c8bdec4f6f715':
Fix Bluetooth Javadoc to clarify the maximum device name length.
eb3b40af974d818cab66bf0a728c8bdec4f6f715 17-Sep-2010 Jake Hamby <jhamby@google.com> am 0f584306: Fix Bluetooth Javadoc to clarify the maximum device name length.

Merge commit '0f5843069bd419fba4fb253986645dfbca0784b7' into gingerbread-plus-aosp

* commit '0f5843069bd419fba4fb253986645dfbca0784b7':
Fix Bluetooth Javadoc to clarify the maximum device name length.
0f5843069bd419fba4fb253986645dfbca0784b7 17-Sep-2010 Jake Hamby <jhamby@google.com> Fix Bluetooth Javadoc to clarify the maximum device name length.

The maximum length of a Bluetooth device name is 248 bytes using
UTF-8 encoding. Updated the Javadoc to clarify that the length is
limited by the number of UTF-8 bytes and not the number of characters.

Change-Id: I135671f5ee6c5eb6372f3fbbc5fccb02de65e6c4
luetoothAdapter.java
20c8f47330e7d4f5f191264f0d7ca67f6532adc2 13-Sep-2010 Jaikumar Ganesh <jaikumar@google.com> resolved conflicts for merge of 0522f5e9 to master

Change-Id: Ie0a7ece33dced1042948087053e49665f6235fc2
0522f5e9b7dac0dc0229c9ddb07e7e5482846b1a 13-Sep-2010 Jaikumar Ganesh <jaikumar@google.com> am cc5494c9: Out Of Band API for Secure Simple Pairing.

Merge commit 'cc5494c9996f809e36539b24e8b6b67683383d29' into gingerbread-plus-aosp

* commit 'cc5494c9996f809e36539b24e8b6b67683383d29':
Out Of Band API for Secure Simple Pairing.
cc5494c9996f809e36539b24e8b6b67683383d29 10-Sep-2010 Jaikumar Ganesh <jaikumar@google.com> Out Of Band API for Secure Simple Pairing.

Change-Id: I54ded27ab85d46eef3d2cca84f2394b1ffe88ced
luetoothAdapter.java
luetoothDevice.java
Bluetooth.aidl
b70765cc27a174d1d4a0bab7062733ebd3eae354 02-Sep-2010 Jaikumar Ganesh <jaikumar@google.com> Decouple Tethering UI with registering of SDP records.

This can lead to usability issues, since the SDP record
will get registered later on.

Change-Id: Ifda78a3831572f1b9955bf06da9a8b0e949942aa
luetoothPan.java
Bluetooth.aidl
4e25533945ebefd888b48f4256e8735591b4f94b 27-Aug-2010 Jaikumar Ganesh <jaikumar@google.com> Add @hide for the VENDOR_SPECIFIC_HEADSET_INTENT

Change-Id: I5405b57f5815fa91ffce829dec6da3e4b7f1245f
luetoothHeadset.java
0fc1b793b68d4c0ee2eafad6618dea0f2722c2cc 24-Aug-2010 Jean-Baptiste Queru <jbq@google.com> am b13c9bc5: manual merge

Merge commit 'b13c9bc5219ca85c36507fb3a8d5923e3de974b6'

* commit 'b13c9bc5219ca85c36507fb3a8d5923e3de974b6':
BluetoothHeadset.java:
34536183f4d7062ec2c8e80013bdc71e445ded6f 24-Aug-2010 Jaikumar Ganesh <jaikumar@google.com> Add BNEP_SVC UUID for incoming tethering connections.

Change-Id: I90c24edfd133ac9fa89c3467383cd61fa23954c6
luetoothUuid.java
332058050a42e0f8b8735caa5693aa59d520f220 23-Aug-2010 Jaikumar Ganesh <jaikumar@google.com> Add Tethering class bit check.

Change-Id: Iaa87c91c4b3db3b77c2e6c4f559fa2e438c9c247
luetoothClass.java
b13c9bc5219ca85c36507fb3a8d5923e3de974b6 21-Aug-2010 Jean-Baptiste Queru <jbq@google.com> manual merge

Change-Id: Ib92a75958b857277e17f4bd0bee75744c653c942
6fdd0c6274c81b337ad35b70480f881daf7354c3 11-Aug-2010 Danica Chang <danicachang@google.com> bluetooth tethering

Change-Id: Id6d5fb1922facc7013abc29214d3e1141995b767
luetoothDevicePicker.java
luetoothPan.java
luetoothUuid.java
Bluetooth.aidl
a4733941839abd672b1e37edd7f61c8932d4aa48 10-Aug-2010 Herb Jellinek <Herb.Jellinek@gmail.com> BluetoothHeadset.java:
Added ACTION_VENDOR_SPECIFIC_HEADSET_EVENT,
EXTRA_VENDOR_SPECIFIC_HEADSET_EVENT_CMD, EXTRA_VENDOR_SPECIFIC_HEADSET_EVENT_ARGS.

BluetoothAssignedNumbers.java (new file):
A home for BT assigned numbers, beginning with the company IDs.

HeadsetBase.java:
Reformatted some code.

AtCommandHandler.java:
Fixed comment typos.

Change-Id: I34d6f248166305d72be66632779fc963b894379c

Added EXTRA_VENDOR_SPECIFIC_HEADSET_EVENT_COMPANY_ID.
Fixed a minor comment typo.

Change-Id: I8550692c13510a853c894b2d108bef4520d931c2
tCommandHandler.java
luetoothAssignedNumbers.java
luetoothHeadset.java
eadsetBase.java
feb1a4e5e090eecbae2e5454b738870440349488 10-Aug-2010 Jaikumar Ganesh <jaikumar@google.com> am 4a671a74: am 745d1e90: Merge "Update javadoc for the API and change return of getBondedDevices()." into gingerbread

Merge commit '4a671a745202cb15cc668d46400731a03b068558'

* commit '4a671a745202cb15cc668d46400731a03b068558':
Update javadoc for the API and change return of getBondedDevices().
39e8a8a04d3d780894c11f986cf94efe66406ccf 10-Aug-2010 Jaikumar Ganesh <jaikumar@google.com> am 4e25db6a: am cbaef518: Merge "Check whether Bluetooth is enabled before making any API calls." into gingerbread

Merge commit '4e25db6a51c4182139b85e3b01317d161f944bbb'

* commit '4e25db6a51c4182139b85e3b01317d161f944bbb':
Check whether Bluetooth is enabled before making any API calls.
fec86f4aa2de9c89d6c0aea6128be77eb67417d1 10-Aug-2010 Jaikumar Ganesh <jaikumar@google.com> Update javadoc for the API and change return of getBondedDevices().

getBondedDevices() *might* work if called before the Bluetooth
State intent is broadcasted. However, this can cause ANRs and problems.
This API was updated to return null, if called before the intent
is received. However, this might cause existing apps to crash. Return
an empty set instead.

Change-Id: Ibc484d3394aa0bbebd651221efde6a7015ce7110
luetoothAdapter.java
f5ff170be1f6b28758f125e50524f43f9d6ec684 07-Aug-2010 Jaikumar Ganesh <jaikumar@google.com> Check whether Bluetooth is enabled before making any API calls.

For example, Settings app makes calls to get Bonded Devices
before Bluetooth is on. This leads to ANRs and will
prevent autoconnection.

Change-Id: I56748a9bd1d603b5782c17775c6b20b831bf6572
luetoothAdapter.java
de07503a382e81ba82f4cd4dee81ff2fbf3295bc 20-Jul-2010 Jaikumar Ganesh <jaikumar@google.com> Add HID to the state machine and add native call backs.

Change-Id: Ib9f3e476d4176bc04e23e7674dc54aa5a6417308
luetoothDeviceProfileState.java
luetoothProfileState.java
eaeffac5fc8244d8fe03de786baa3ca76f5553b8 20-Jul-2010 Danica Chang <danicachang@google.com> Merge "deleted ScoSocket.java and android_bluetooth_ScoSocket.cpp"
df7627db715a7a2e7f646f02a07caf2347bb90b8 22-Jun-2010 Adam Powell <adamp@google.com> Changes for bluetooth keyboard support.

Add device class constant for PROFILE_HID and check for
Device.Major.PERIPHERAL when checking for class matches.

Change UUID for HID support.

Fix bug in BluetoothService.

Change-Id: Ie5361257d90fd749249e915824564bc3d79fb95d
luetoothClass.java
luetoothUuid.java
545e6708adda6859932b55fd824794b1401f5318 04-Jun-2010 Jaikumar Ganesh <jaikumar@google.com> HID profile.

Change-Id: I52e965a6537bce02c751ba26fe7b44dd03832510
luetoothInputDevice.java
luetoothUuid.java
Bluetooth.aidl
672e04b5d288eb6e0a3310cc9d405cb0e9a48cc3 16-Jun-2010 Danica Chang <danicachang@google.com> deleted ScoSocket.java and android_bluetooth_ScoSocket.cpp

Change-Id: I2bc63979bada9e18bcfeb9e740fab8b37c6868b9
coSocket.java
f1048cdb68d4e4671be2060ca31a3adfc613e88e 03-Jun-2010 Jaikumar Ganesh <jaikumar@google.com> Serialize all commands for a particular profile.

Change-Id: I843ea9ab0bb2372c8316e99e8c083a9939ad774a
luetoothDeviceProfileState.java
luetoothProfileConnectionState.java
luetoothProfileState.java
740e39be6af3e366a4b82c030b5ea67ab144b42a 02-Jun-2010 Jaikumar Ganesh <jaikumar@google.com> Pass BluetoothDevice to the Bluetooth Headset calls.

This is to support multiple headsets at the same time, atleast
at the framework level.

Change-Id: I91d05c6c2828c9a09d00806d5e79f1e9c9c7cf84
luetoothHeadset.java
BluetoothHeadset.aidl
9b637e5985f9a86f39d70335c0390ade3716592a 02-Jun-2010 Jaikumar Ganesh <jaikumar@google.com> Add a new state machine for handling the incoming / outgoing profile
connections.

Change-Id: I5fc9170b5e24c4a52a6f2ef4ca7a8bac65271941
luetoothHeadset.java
luetoothProfileConnectionState.java
Bluetooth.aidl
BluetoothA2dp.aidl
BluetoothHeadset.aidl
af21fa61c2158fa2a693d98bb281abd56e658b40 18-May-2010 Jaikumar Ganesh <jaikumar@google.com> Removing STOPSHIP logs.

Bug: 2694602
Change-Id: Id56e1ddcf5ea76de32238cd6761f2caf053f1fa1
luetoothAdapter.java
c24dbdb57b30f9e8fa6b0c5b48372017b5ae46b0 02-Apr-2010 Jaikumar Ganesh <jaikumar@google.com> Add an extra for the Disconnect Headset State.

This extra tells as to who initiated the disconnection.

Bug:2568119
Change-Id: Iea706ad69f79ae0257604dfa84d49126fb851cca
luetoothHeadset.java
5e12aec16335dc3ae09d4cc8faa3e0deac5f2d31 19-Mar-2010 Eric Olsen <eolsen@android.com> Add the blacklist for the SCO connections

Change-Id: Ibfdfb21fb2f27d01d2b8bff48041398aa4308353
Signed-off-by: Eric Olsen <eolsen@android.com>
coSocket.java
d726b35ebd8660022dcea706ee6d3ca51886b04e 17-Mar-2010 Eric Laurent <elaurent@google.com> Added a configuration option indicating if the platform supports use of
bluetooth SCO for off call use cases.
Added method to BluetoothHeadset API to check if voice dialer over
bluetooth is supported. Replaces direct use of DISABLE_BT_VOICE_DIALING
and takes platform capabilities into account.

Needed for issue 2416481: Support Voice Dialer over BT SCO.

Change-Id: I237d5a984dbc4cbc88e98b85d710a6c87ba1b315
luetoothHeadset.java
15a4d2ffd04dc6c70f2cd17dae12ac6bc14c69ab 12-Mar-2010 Kenny Root <kroot@google.com> Add correct copyright headers to multiple files

Format for the list of changes shows the origin commit reference followed
by the file name.

33931-p9 awt/org/apache/harmony/awt/gl/font/AndroidGlyphVector.java
33931-p9 awt/org/apache/harmony/awt/gl/image/PngDecoderJava.java
133776-p9 core/java/android/app/IntentService.java
127013-p9 core/java/android/appwidget/AppWidgetHost.java
27863-p9 core/java/android/bluetooth/BluetoothAudioGateway.java
60765-p9 core/java/android/content/SyncResult.java
43920-p9 core/java/android/content/pm/ActivityInfo.java
43920-p9 core/java/android/content/pm/ApplicationInfo.java
43920-p9 core/java/android/content/pm/InstrumentationInfo.java
43920-p9 core/java/android/content/pm/PackageInfo.java
44103-p9 core/java/android/content/pm/PackageItemInfo.java
68960-p9 core/java/android/content/pm/PackageStats.java
43920-p9 core/java/android/content/pm/ResolveInfo.java
43920-p9 core/java/android/content/pm/ServiceInfo.java
60641-p9 core/java/android/content/res/Configuration.java
60734-p9 core/java/android/content/res/TypedArray.java
137672-p9 core/java/android/inputmethodservice/ExtractButton.java
123112-p9 core/java/android/inputmethodservice/ExtractEditText.java
119291-p9 core/java/android/inputmethodservice/IInputMethodSessionWrapper.java
112946-p9 core/java/android/inputmethodservice/IInputMethodWrapper.java
115078-p9 core/java/android/os/BatteryStats.java
124790-p9 core/java/android/text/style/UpdateAppearance.java
45083-p9 core/java/android/view/RawInputEvent.java
101491-p9 core/java/android/view/inputmethod/EditorInfo.java
114701-p9 core/java/android/view/inputmethod/ExtractedText.java
123112-p9 core/java/android/view/inputmethod/ExtractedTextRequest.java
119291-p9 core/java/com/android/internal/os/HandlerCaller.java
129279-p9 core/java/com/android/internal/os/PkgUsageStats.java
114701-p9 core/java/com/android/internal/view/IInputConnectionWrapper.java
114701-p9 core/java/com/android/internal/view/InputConnectionWrapper.java
84364-p9 opengl/java/android/opengl/EGLLogWrapper.java
11355-p9 opengl/tools/glgen/src/CFunc.java
11355-p9 opengl/tools/glgen/src/CType.java
11355-p9 opengl/tools/glgen/src/CodeEmitter.java
11355-p9 opengl/tools/glgen/src/GenerateGL.java
11355-p9 opengl/tools/glgen/src/JFunc.java
11355-p9 opengl/tools/glgen/src/JType.java
11355-p9 opengl/tools/glgen/src/JniCodeEmitter.java
11355-p9 opengl/tools/glgen/src/ParameterChecker.java
57236-p9 services/java/com/android/server/status/AnimatedImageView.java
66754-p9 services/java/com/android/server/status/CloseDragHandle.java
57188-p9 services/java/com/android/server/status/DateView.java
46928-p9 services/java/com/android/server/status/ExpandedView.java
70590-p9 services/java/com/android/server/status/FixedSizeDrawable.java
45968-p9 services/java/com/android/server/status/IconData.java
57470-p9 services/java/com/android/server/status/IconMerger.java
82719-p9 services/java/com/android/server/status/LatestItemView.java
45968-p9 services/java/com/android/server/status/NotificationData.java
66754-p9 services/java/com/android/server/status/NotificationLinearLayout.java
57458-p9 services/java/com/android/server/status/NotificationViewList.java
45968-p9 services/java/com/android/server/status/StatusBarException.java
45968-p9 services/java/com/android/server/status/StatusBarIcon.java
46130-p9 services/java/com/android/server/status/StatusBarNotification.java
45968-p9 services/java/com/android/server/status/StatusBarView.java
46199-p9 services/java/com/android/server/status/Ticker.java
62286-p9 services/java/com/android/server/status/TickerView.java
57188-p9 services/java/com/android/server/status/TrackingView.java
86041-p9 telephony/java/android/telephony/PhoneStateListener.java
87020-p9 telephony/java/com/android/internal/telephony/TelephonyIntents.java
136269-p9 telephony/java/com/android/internal/telephony/gsm/SpnOverride.java
34409-p9 tests/FrameworkTest/src/com/android/frameworktest/FrameworkTestApplication.java
55717-p9 tests/FrameworkTest/src/com/android/frameworktest/performance/InvalidateCycle.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/AutoCompleteTextViewActivityLandscape.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/AutoCompleteTextViewActivityPortrait.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityNonScrollablePanScan.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityNonScrollableResize.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityScrollablePanScan.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityScrollableResize.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/BottomEditTextActivityPanScan.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/BottomEditTextActivityResize.java
127341-p9 tests/ImfTest/src/com/android/imftest/samples/ButtonActivity.java
129347-p9 tests/ImfTest/src/com/android/imftest/samples/DialogActivity.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/EditTextActivityDialog.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityNoScrollPanScan.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityScrollPanScan.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityScrollResize.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/OneEditTextActivityNotSelected.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/OneEditTextActivitySelected.java
25959-p9 tests/framework-tests/src/android/test/FrameworkTests.java
46162-p9 tests/framework-tests/src/com/android/internal/http/multipart/MultipartTest.java
77101-p9 tools/layoutlib/bridge/tests/com/android/layoutlib/bridge/NinePatchTest.java
9788976b1465ce982b5ae7c741345edd0ecd9322 core/java/android/accounts/AuthenticatorDescription.java
53332883543868fb83e111a07306368b7772b340 core/java/android/app/UiModeManager.java
93e7e22ec91dbc641d10ca6d70423e1357a95bba core/java/android/app/FullBackupAgent.java
328c0e7986aa6bb7752ec6de3da9c999920bb55f core/java/android/content/CursorEntityIterator.java
307da1a46b4c9b711bafe8fbaaa6b98e8868c18e core/java/android/content/SyncQueue.java
307da1a46b4c9b711bafe8fbaaa6b98e8868c18e core/java/android/content/SyncOperation.java
eb034652c2037a47ebfd99779e8383bb8bb528af core/java/android/content/pm/LabeledIntent.java
49237345d83e62fdb9eb8d50b13ad086636a04fa core/java/android/content/pm/FeatureInfo.java
a2b6c3775ed6b8924232d6a01bae4a19740a15f8 core/java/android/content/pm/PackageInfoLite.java
3ecd5f437580e49d80beecd29489d5fb1f7a7db0 core/java/android/content/pm/RegisteredServicesCacheListener.java
5ebbb4a6b3e16f711735ae0615b9a9ea64faad38 core/java/android/content/pm/XmlSerializerAndParser.java
c4516a7b62de525e3d6d5e76851bdfaf12c11f05 core/java/android/database/sqlite/SQLiteTransactionListener.java
9bbc21a773cbdfbef2876a75c32bda5839647751 core/java/com/android/internal/backup/LocalTransport.java
21f1bd17b2dfe361acbb28453b3f3b1a110932fa core/java/com/android/internal/content/PackageMonitor.java
4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 core/java/com/android/internal/view/BaseSurfaceHolder.java
4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 core/java/com/android/internal/view/BaseIWindow.java
e540833fdff4d58e37c9ba859388e24e2945ed45 core/java/com/android/internal/os/SamplingProfilerIntegration.java
192ab903887bbb8e7c7b6da5c581573850e30f46 core/tests/coretests/src/android/widget/expandablelistview/PositionTesterContextMenuListener.java
1619367ab823150fa8856d419abe02ceb75886f1 media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/MediaProfileReader.java
27f8002e591b5c579f75b2580183b5d1c4219cd4 opengl/tools/glgen/stubs/gles11/glGetString.java
560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glGetProgramInfoLog.java
560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glGetShaderInfoLog.java
560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glShaderSource.java
1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/GenerateGLES.java
1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/Jsr239CodeEmitter.java
1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/GLESCodeEmitter.java
69e21f5f6e0d04539cd92848ea009dd615d88c2c opengl/tests/gldual/src/com/android/gldual/TriangleRenderer.java
c028be4f3b8c7476b46859f66c3f33d528adf181 packages/DefaultContainerService/src/com/android/defcontainer/DefaultContainerService.java
7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerMeasurement.java
7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerTestActivity.java
7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerTestRunner.java
df8a3f31d871db25e952972c2eb346a71186e9e3 tests/BrowserTestPlugin/src/com/android/testplugin/TestPlugin.java
cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/ActivityManagerPermissionTests.java
cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/ServiceManagerPermissionTests.java
cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/WindowManagerPermissionTests.java

Copyright header moved to top in following file:

core/tests/coretests/src/android/widget/ListViewTest.java

Change-Id: I3c3198be5a0ba36e18679ed834170432bf0b8418
luetoothAudioGateway.java
ea5056e5a705048f8495131ab0dcf087a2633fed 24-Feb-2010 Nick Pelly <npelly@google.com> Add documentation to help developers make an RFCOMM conection to a Bluetooth
serial board. They all use a well-known UUID that is not really explained
anywhere official, and this always trips developers up.

Change-Id: I53bda44b580f472b1ff1ad196b25485b68f4b5d5
luetoothDevice.java
a3a0946554d120c35ebe0e632fdc454e49cf61e1 09-Feb-2010 mah <mah@android.com> Enable bluetooth voice dialing in BluetoothHeadset.java.

Bug: 243220

This just sets DISABLE_BT_VOICE_DIALING to false.
A different checking to packages/apps/VoiceDialer actually
makes it work properly.
luetoothHeadset.java
987c415c8386e15833d45a0ce18041a6bd88690e 21-Dec-2009 Jaikumar Ganesh <jaikumar@google.com> am f5d2eec4: am 11b97c50: Merge change I551ed729 into eclair

Merge commit 'f5d2eec4fd530ac09ce1f8d2e51ea29b5cd12a38'

* commit 'f5d2eec4fd530ac09ce1f8d2e51ea29b5cd12a38':
Use UNDEFINED priorities when unpaired.
11b97c50e6fb6d723e88eac3c125b60ca42184f7 21-Dec-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change I551ed729 into eclair

* changes:
Use UNDEFINED priorities when unpaired.
3a9b03425b4890364bd1f1a321171ddd426a4621 19-Dec-2009 Scott Main <smain@google.com> am a2bca747: am a25032a0: Merge change Ic31c0f62 into eclair

Merge commit 'a2bca7477d803541c5a48cc7624e2b6c305c5970'

* commit 'a2bca7477d803541c5a48cc7624e2b6c305c5970':
docs: update the Bluetooth guide with links to the sample
1362bbcf760bd55d325d00ddea4b6f76afad8c08 17-Dec-2009 Scott Main <smain@google.com> docs: update the Bluetooth guide with links to the sample
app, scrub the sibling files, and revise the Bluetooth package
summary to point to the BT dev guide.
ackage.html
551ed72940af6e4f0b34a1d05282497a547e9a7c 11-Dec-2009 Jaikumar Ganesh <jaikumar@google.com> Use UNDEFINED priorities when unpaired.

For the docks, we can set if a device is preferred or not
before pairing process. This was getting overridden when we pair.
This problem doesn't happen with normal headsets.

Dr No: Eastham
Bug: 2318290
luetoothA2dp.java
luetoothHeadset.java
7b0463a949b57620680b95e45c66a05f67426b74 11-Dec-2009 Scott Main <smain@google.com> am ed2a70d6: docs: add the Bluetooth developer guide, and make some revisions to the BT javadocs

Merge commit 'ed2a70d6495b3f1928e36ad2b00ee4d33b2c0379' into eclair-mr2

* commit 'ed2a70d6495b3f1928e36ad2b00ee4d33b2c0379':
docs: add the Bluetooth developer guide,
ed2a70d6495b3f1928e36ad2b00ee4d33b2c0379 10-Dec-2009 Scott Main <smain@google.com> docs: add the Bluetooth developer guide,
and make some revisions to the BT javadocs
luetoothAdapter.java
luetoothClass.java
b08170ad7e4ca4908852b0e20759ea740b338a03 08-Dec-2009 Jaikumar Ganesh <jaikumar@google.com> am ae88e2d1: Merge change I38227501 into eclair

Merge commit 'ae88e2d130a4d69bdf7ddc58f6ae512ea63087ff' into eclair-mr2

* commit 'ae88e2d130a4d69bdf7ddc58f6ae512ea63087ff':
Add API to get Active Sinks.
b16c4f7dd92dabf0cc27438a5d3d9ebd203a38b3 05-Dec-2009 Jaikumar Ganesh <jaikumar@google.com> Add API to get Active Sinks.

Allow incoming connections only when there are no active sinks.

Dr No: Eastham
Bug: 2133530
luetoothA2dp.java
BluetoothA2dp.aidl
11a2853e0196905e25a2dc5c227320688e04e950 03-Dec-2009 Jaikumar Ganesh <jaikumar@google.com> am 8c411fb1: Merge change I79420b02 into eclair

Merge commit '8c411fb13923d1fa28fcd98452bf3d17b8b1a338' into eclair-mr2

* commit '8c411fb13923d1fa28fcd98452bf3d17b8b1a338':
Add support for Car Dock.
3fbf7b62bb48b10316353087d09cc3720af00642 03-Dec-2009 Jaikumar Ganesh <jaikumar@google.com> Add support for Car Dock.

Dr No: Eastham
Bug: 2133530
luetoothDevice.java
Bluetooth.aidl
721361f1a74b876c42cc0533c9c19320e8c09927 21-Nov-2009 Jaikumar Ganesh <jaikumar@google.com> Add a new priority for Auto Connection of A2DP. DO NOT MERGE.

1. PRIORITY_OFF is when user unchecks A2DP connection profile box.
2. By default, when you bond, it will be PRIORITY_ON.
3. When the profile gets connected, the priority gets set to
PRIORITY_AUTO_CONNECT. This means that we will connect
automatically to this profile.
4. When the user disconnects, we downgrade the priority to PRIORITY_ON,
which means we won't reconnect automatically.

a) We need to make a similar change to Handsfree profile.
b) We need to rework the profile management design and code which
will fix the 6 second timer that we have for A2DP reconnection.

Add AUTO_CONNECT priority for Headset profile.
Also, don't set priority to ON while disconnecting.
This logic has been pushed up to the Settings app.

Dr No: Eastham
Bug: 2133530
luetoothA2dp.java
luetoothHeadset.java
249345ee5ae6d7307594c7b80fefdb2a00f14443 26-Nov-2009 Jaikumar Ganesh <jaikumar@google.com> Add AUTO_CONNECT priority for Headset profile.

Also, don't set priority to ON while disconnecting.
This logic has been pushed up to the Settings app.
luetoothHeadset.java
aafff8a06900938ccf2717ab9ba7b664c5948eb0 21-Nov-2009 Jaikumar Ganesh <jaikumar@google.com> Add a new priority for Auto Connection of A2DP.

1. PRIORITY_OFF is when user unchecks A2DP connection profile box.
2. By default, when you bond, it will be PRIORITY_ON.
3. When the profile gets connected, the priority gets set to
PRIORITY_AUTO_CONNECT. This means that we will connect
automatically to this profile.
4. When the user disconnects, we downgrade the priority to PRIORITY_ON,
which means we won't reconnect automatically.

a) We need to make a similar change to Handsfree profile.
b) We need to rework the profile management design and code which
will fix the 6 second timer that we have for A2DP reconnection.
luetoothA2dp.java
cb5966426a51aeb7d02e7f859512d20e084e03ed 20-Nov-2009 Scott Main <smain@google.com> am e1611399: am 6d95fc0a: docs for ESR: add docs to bluetooth explainin that discovery should be cancelled before connecting to a device

Merge commit 'e16113998bb10f39ee1384bfc497aceeeb193440' into eclair-mr2

* commit 'e16113998bb10f39ee1384bfc497aceeeb193440':
docs for ESR: add docs to bluetooth explainin that discovery should
e16113998bb10f39ee1384bfc497aceeeb193440 20-Nov-2009 Scott Main <smain@google.com> am 6d95fc0a: docs for ESR: add docs to bluetooth explainin that discovery should be cancelled before connecting to a device

Merge commit '6d95fc0a2ca910212a43c4547c0ef000659b72dc' into eclair

* commit '6d95fc0a2ca910212a43c4547c0ef000659b72dc':
docs for ESR: add docs to bluetooth explainin that discovery should
6d95fc0a2ca910212a43c4547c0ef000659b72dc 20-Nov-2009 Scott Main <smain@google.com> docs for ESR: add docs to bluetooth explainin that discovery should
be cancelled before connecting to a device

bug: 2160782,2198463
luetoothAdapter.java
luetoothServerSocket.java
luetoothSocket.java
b262f50af9ad22837af9e88e6c8f71b44cdefd56 10-Nov-2009 Scott Main <smain@google.com> am 13ce56bd: am 88427cff: Merge change Ibcfb7d10 into eclair-sdk

Merge commit '13ce56bdbc4872c0b12caff501e063f5a75073db' into eclair-mr2

* commit '13ce56bdbc4872c0b12caff501e063f5a75073db':
docs: add more documentation for the bluetooth apis.
13ce56bdbc4872c0b12caff501e063f5a75073db 10-Nov-2009 Scott Main <smain@google.com> am 88427cff: Merge change Ibcfb7d10 into eclair-sdk

Merge commit '88427cff609e668185010af2244500be5823595e' into eclair

* commit '88427cff609e668185010af2244500be5823595e':
docs: add more documentation for the bluetooth apis.
9fab0aef19a4633d2e4670564e5d7ae9e52fe11f 04-Nov-2009 Scott Main <smain@google.com> docs: add more documentation for the bluetooth apis.

more descriptions for some of the classes and a new
overview and pseudo-code example for using BT APIs
in the package summary.
luetoothAdapter.java
luetoothClass.java
luetoothDevice.java
luetoothServerSocket.java
luetoothSocket.java
ackage.html
811f655366461d0f21f970bcac07dd2084fd54fa 06-Nov-2009 Michael Chan <mchan@android.com> am 8d51f710: Merge change Icdd2864e into eclair

Merge commit '8d51f7101d2427953dbff9b4b8f8c9fdc0dc4a91' into eclair-mr2

* commit '8d51f7101d2427953dbff9b4b8f8c9fdc0dc4a91':
b/2234854 Fixed Bluetooth API return codes for requesting permission to enable bluetooth
cdd2864eb340fe46a97f4991f3949db1196bdde8 06-Nov-2009 Michael Chan <mchan@android.com> b/2234854 Fixed Bluetooth API return codes for requesting permission to enable bluetooth
luetoothAdapter.java
bf2efbc0642d07acee1a83c17987abb380e5243a 30-Oct-2009 Jaikumar Ganesh <jaikumar@google.com> am 3cf254d2: Merge change I4b3db907 into eclair

Merge commit '3cf254d2ba303da3354ed65fd7f3136e87a56b9f' into eclair-mr2

* commit '3cf254d2ba303da3354ed65fd7f3136e87a56b9f':
Revert the channge where channels were not selected randomly.
4b3db907f04d85cd20e0a0e35056ba44a10e8867 30-Oct-2009 Jaikumar Ganesh <jaikumar@google.com> Revert the channge where channels were not selected randomly.

The Bluez SDP bug has been fixed.
Reverting parts of the commit: 16fb88a673c41b93c5d57ccb28c2697e7d87701a

Bug: 2173752
Dr No: Eastham
luetoothAdapter.java
db7ae10d6b8e86ff5311512de45afa65a1b0a738 09-Oct-2009 Nick Pelly <npelly@google.com> Remove STOPSHIP BT logging.

Do not merge.

Change-Id: I428bc0fc67030f24112f2e9c865824dfaea4897d
DrNo: eastham
Bug: 2089423
Joke: Why was Tigger looking in the toilet? To find Pooh
luetoothAdapter.java
e6ee3be1c254404dad842298f6f56c11cc6c7ac8 08-Oct-2009 Nick Pelly <npelly@google.com> BT API security audit: fix a couple of permission mistakes.

Make functions that are meant to be BLUETOOTH_ADMIN really
BLUETOOTH_ADMIN.

Add some missing javadoc for permissions.

The only functional change here is the BLUETOOTH->BLUETOOTH_ADMIN
changes. This is super safe because every system app that uses BT
has both permissions.

Change-Id: Iddc61f9fd5d81fe0171358665a0fa52f2fa02871
DrNo: eastham
Joke: How do you catch a rabbit? Hide behind a tree and make carrott noises.
luetoothAdapter.java
luetoothDevice.java
e5d93b7ed983f98855555d560faf060836f1a52f 08-Oct-2009 Jaikumar Ganesh <jaikumar@google.com> Set the Bond State to NONE when we receive a Agent Cancel.

Sometimes during OPP, we can get stuck in Pairing state when the remote
end, cancels the Pairing process - we will just get onAgentCancel
and thus not set the Pairing state properly.

DrNo: Eastham
Bug:2174874
luetoothDevice.java
f242b7b931898856bcbcb7ec36cacf43098ba544 08-Oct-2009 Nick Pelly <npelly@google.com> Introduce BluetoothAdapter.getDefaultAdapter().

This is the main entry point to the Bluetooth APIs, and returns the default
local Bluetooth adapter.

It replaces context.getSystemService(Context.BLUETOOTH_SERVICE). This was
never in a public SDK release.

DrNo: eastham
Bug: 2158765
Joke: Why can't you play cards in the jungle? Because there's too many cheetas!
Change-Id: Ieed8be009ee5aba621cb69090ee8c8a9c19c840d
luetoothAdapter.java
luetoothDevice.java
16fb88a673c41b93c5d57ccb28c2697e7d87701a 07-Oct-2009 Nick Pelly <npelly@google.com> Encourage developers to connect RFCOMM by UUID instead of Channel.

Hide createRfcommSocket(int channel)
Add createRfcommSocketWithServiceRecord(UUID uuid)

Rename listenUsingRfcomm(String,UUID) -> listenUsingRfcommWithServiceRecord(..)

Now we have a complete API for developers to make peer-peer RFCOMM connections
with hard-coding the limited (30) RFCOMM channels, instead using SDP lookup
of an UUID.

This commit addresses two serious bugs:
- Do not throw IOException on accepting an incoming RFCOMM connection with
BluetoothSocket. This was a regression from commit 24bb9b8af4ff6915
- Workaround failure of bluez to update SDP cache when channel changes by
trying to use the same RFCOMM channel on the server every time, instead
of picking server channels randomly. This is a pretty ugly workaround,
and we are still trying to fix the caching issue - but with this
workaround we are at least shippable and apps will work at least until
they start colliding on the 30 RFCOMM channels.

DrNo: eastham
Bug: 2158900
Joke: What did the digital watch say to his mom? "Look mom no hands."
Change-Id: Ia4879943b83afac06b6f1a3f2391cf1628afce7d
luetoothAdapter.java
luetoothDevice.java
luetoothServerSocket.java
luetoothSocket.java
Bluetooth.aidl
BluetoothCallback.aidl
52cde7279bad58285704498eea57bdaf9e595b49 06-Oct-2009 Nick Pelly <npelly@google.com> Fix docs builds.
luetoothServerSocket.java
luetoothSocket.java
24bb9b8af4ff691538fe9e517e8156016b0da6cd 03-Oct-2009 Nick Pelly <npelly@google.com> Provide an API for apps to use a dynamic RFCOMM channel and SDP record.

Hide listenUsingRfcommOn(int channel)
Add listenUsingRfcomm(String name, ParcelUuid uuid)

The new API automatically finds a free RFCOMM channel and registers an SDP
record with the given uuid and name. The SDP record is automatically
removed when the socket is closed, or if the application dies.

Apps are prevented from registering SDP records with the uuid of system
Bluetooth profiles, such as A2DP, HFP and OPP.

Apps are prevented from removing SDP records that they did not create. This is
tracked by pid.

TODO: Provide an API for the connecting app to look up an SDP record.

Bug: 2158900
DrNo: eastham
Joke: "What did the dog say to the tree? bark."
Change-Id: Ia92f51c34615a7270a403255ad2b8faa98c4a3f5
luetoothAdapter.java
luetoothServerSocket.java
luetoothSocket.java
luetoothUuid.java
Bluetooth.aidl
5a463a693cae501f3e65936ea96e1ca1bae5fc3f 01-Oct-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change Ic2a16d4f into eclair

* changes:
b/2148252 Fix emulator
081f58abb7ceb702fdb0b65ff0e0ff70dd265a30 01-Oct-2009 Michael Chan <mchan@android.com> b/2148252 Fix emulator

Change-Id: Ic2a16d4fac2a2a12a209c83ad2049829255cb31f
luetoothA2dp.java
54172d92afec5d7d18c830d7428a3230a39d4c02 29-Sep-2009 Jaikumar Ganesh <jaikumar@google.com> Try to reconnect twice when the rfcomm error code is Connection Refused.

This happens when the the remote headset is in a bad state or is
not accepting connections. Try twice before giving up.

Change-Id: I55e15bad6b72904b8e4ccbca89e17e9bd3ddb61e
eadsetBase.java
e766eae93890b09db67d2c6a599c25fdae103f20 30-Sep-2009 Nick Pelly <npelly@google.com> Fix broken build.

Should be bool not int. Forgot to roll in local changes to last commit.

Change-Id: I28bad88238e5b715a5033b0d5a897d924ef8b538
luetoothA2dp.java
f9bbe1e71a502fe7bd1f4a23ba5bbe4dde0d9d57 24-Jun-2009 Zhu Lan <mtcb47@motorola.com> Bluetooth A2DP suspend/resume functionality

Change-Id: I8366852fa9b6ff9dacf18db00ea1c2be0c00ff34
luetoothA2dp.java
BluetoothA2dp.aidl
aef439e6f825c0cb99a2ac08c8207f48b7a9fe10 28-Sep-2009 Nick Pelly <npelly@google.com> Move android.bluetooth.ParcelUuid to android.os.ParcelUuid

Change-Id: I564429d5c5b6a5372b6ff26a53b0d7e518b53631
luetoothAdapter.java
luetoothDevice.java
luetoothUuid.java
Bluetooth.aidl
arcelUuid.aidl
arcelUuid.java
1acdcc1a508c00dc31751a2a2eef539a59cb21ce 28-Sep-2009 Nick Pelly <npelly@google.com> Add an API to request a system activity to turn on Bluetooth.

Change-Id: I2fca33ad27017ea4e2ecba37854b749682d07672
luetoothAdapter.java
12835478ee687a493d1b5882e67b6725bd539c26 26-Sep-2009 Nick Pelly <npelly@google.com> Handle expiration of discovery mode in system server.

Change-Id: I58fd199b40ffdf8168a5489be8eedb5d25d56722
luetoothAdapter.java
Bluetooth.aidl
3219ab4de27cd40b2149b0dd13edd412efe40244 25-Sep-2009 Brad Fitzpatrick <bradfitz@google.com> Fix typo in Bluetooth docs.
luetoothAdapter.java
18b1e79a123b979d25bfa5d0b0ee5d0382dbd64b 24-Sep-2009 Nick Pelly <npelly@google.com> Bluetooth API: Do not allow apps to programmatically make BT discoverable.

Instead add ACTION_REQUEST_DISCOVERABLE for the system to show a dialog to
adjust discoverable mode.

Also remove createBond(), removeBond() and cancelBondProcess(). The Settings
App already handles these automatically when connections require bonding.

Change-Id: I216154cd1b6de410de64ba91b07d7263ac03e8df
luetoothAdapter.java
luetoothDevice.java
10eac971b3a6e5f34a420dd68ebfa796553ad2b9 21-Sep-2009 Jaikumar Ganesh <jaikumar@google.com> Cache the remote device's service channel.

Bluez Device implementation is such that when a device
is unpaired, we removes the device and hence there is no
way to interact with it unless you pair again. Remote service
channel call is used to get the rfcomm channel number which
will be used in profiles like OPP which don't require pairing.

Change-Id: I868a6cdfdb1b7d3591dd8b66cd0320f41a9c1b92
luetoothUuid.java
163be61ce5ea85181da3a8908adaa63b5ff56a7e 21-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 25412 into eclair

* changes:
Make ParcelUuid helper functions consistent.
ac810e53b70aa01c148c998c57f6888160e1557a 19-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 25779 into eclair

* changes:
Add new API for fetching UUIDs using SDP.
1caa6d111eff6814760ec156b14adc29aa3aae6c 18-Sep-2009 Jaikumar Ganesh <jaikumar@google.com> Add new API for fetching UUIDs using SDP.

Add new API which clients can use to force an SDP query.
The result is broadcast using an intent having the UUIDs.
The intent is broadcast after a timeout, in case of an error.
This timeout is greater than the page timeout.

Change-Id: I61e6db4c05b34c42f679a66987e37e2063a793b6
luetoothDevice.java
Bluetooth.aidl
55e66f1b739097095f6b3c47f88de258898fc1c9 18-Sep-2009 Nick Pelly <npelly@google.com> Reject lowercase characters in checkBluetoothAddress().

This keeps consistency with Bluez which uses upper case string address. It's
important to keep the case the same so that .equals() in BluetoothService.java
work.

Change-Id: I6404ca137d0aec3cc2e6e7cb79763d5305a03547
luetoothAdapter.java
37e0828cf9a6e08d791b23057d98bf00fbf74505 18-Sep-2009 Nick Pelly <npelly@google.com> Add one line of logging when SCO SOCKET connect starts.

This is to help collect information from Moto QA about delays connecting BT
audio.

Change-Id: I790c65f5b64c85aaffc0e68ebe8b6202f476b39f
http://b/2129464
coSocket.java
074c11c1649a097ba1beae719069f8d4a2dd43e3 17-Sep-2009 Nick Pelly <npelly@google.com> Do not @hide Parcelable implementations in BluetoothClass and BluetoothDevice.

Change-Id: I92389c53a9b99c9507f78898329ff87b631c7aa3
luetoothClass.java
luetoothDevice.java
dca2f0fec30e6acbdc466fd6dffb425877e7728a 17-Sep-2009 Jaikumar Ganesh <jaikumar@google.com> Make ParcelUuid helper functions consistent.

Treat zero length arrays and null arrays to be same.

Change-Id: I8c6c28e5dc3da1f31f6f6abfc747db4c2975a90b
luetoothUuid.java
dd0463aef18d251c741bfc9dc7a2787443ef36f1 16-Sep-2009 Jaikumar Ganesh <jaikumar@google.com> Change handling of remoteUuids.

Use the ParcelUuid instead of UUID

Change-Id:Ie05d65a62e8a4df8182a4c737d46c14142bfec43
luetoothDevice.java
luetoothUuid.java
Bluetooth.aidl
82c3ef7adc235e857736b09864c2aa81d41d7132 16-Sep-2009 Jaikumar Ganesh <jaikumar@google.com> Add a parcelable version of UUID file.

Change-Id:I2582e1c9893292ba35bb5cac90ccd2bd18041d8c
arcelUuid.aidl
arcelUuid.java
32d8571f509c392dca732c243e9b2138c15daecf 11-Sep-2009 Jaikumar Ganesh <jaikumar@google.com> Changes for BT 2.1

1) Handle incoming 2.1 pairing requests
2) Modify displaying error messages on bond failures.
3) Add delay while accepting incoming pairing for certain 2.1 devices.
When MITM is on, the link key request might come more than once.
Auto accept with a delay.
4) Handle DisplayPasskey callback for pairing a 2.1 keyboard with
a 2.1 device
luetoothDevice.java
005b228cdfb369d9b3b325884c0337ba5968bf8c 10-Sep-2009 Nick Pelly <npelly@google.com> API_CHANGE: Cleanup, javadoc and unhide more Bluetooth API.

This is a large batch, and covers:

-- Bluetooth Device Discovery --
BluetoothAdapter.ACTION_DISCOVERY_STARTED
BluetoothAdapter.ACTION_DISCOVERY_FINISHED
BluetoothAdapter.startDiscovery()
BluetoothAdapter.cancelDiscovery()
BluetoothAdapter.isDiscovering()

-- Bluetooth bonding (pairing) --
BluetoothAdapter.getBondedDevices()
BluetoothDevice.ACTION_BOND_STATE_CHANGED
BluetoothDevice.EXTRA_BOND_STATE
BluetoothDevice.EXTRA_PREVIOUS_BOND_STATE
BluetoothDevice.BOND_NONE
BluetoothDevice.BOND_BONDING
BluetoothDevice.BOND_BONDED
BluetoothDevice.getBondState()
BluetoothDevice.createBond()
BluetoothDevice.cancelBondProcess()
BluetoothDevice.removeBond()

-- BluetoothClass --
BluetoothDevice.ACTION_CLASS_CHANGED
BluetoothDevice.EXTRA_CLASS
BluetoothDevice.getBluetoothClass()
BluetoothClass.Service.*
BluetoothClass.Device.Major.*
BluetoothClass.Device.*
BluetoothClass.getDeviceClass()
BluetoothClass.getMajorDeviceClass()
BluetoothClass.hasService()

-- Misc BluetoothDevice --
BluetoothDevice.ACTION_ACL_CONNECTED
BluetoothDevice.ACTION_ACL_DISCONNECTED_REQUESTED
BluetoothDevice.ACTION_ACL_DISCONNECTED
BluetoothDevice.ACTION_DISCOVERED
BluetoothDevice.ACTION_NAME_CHANGED
BluetoothDevice.EXTRA_DEVICE
BluetoothDevice.EXTRA_NAME
BluetoothDevice.EXTRA_RSSI

-- Misc BluetoothAdapter --
BluetoothAdapter.ACTION_LOCAL_NAME_CHANGED
BluetoothAdapter.EXTRA_LOCAL_NAME
BluetoothAdapter.checkBluetoothAddress()

I deprecated BluetoothIntent and moved each intent into the class it relates
to.

Change-Id: I877b1280428ab46278b2bc25668bb44cda22dc36
luetoothA2dp.java
luetoothAdapter.java
luetoothClass.java
luetoothDevice.java
luetoothDevicePicker.java
luetoothHeadset.java
luetoothIntent.java
luetoothPbap.java
b24e11baac589fe16426f2d243b460ab84991c7b 09-Sep-2009 Nick Pelly <npelly@google.com> API_CHANGE

Deprecate BluetoothError.java.

I spent a lot of time experimenting with a class BluetoothError to enumerate
the many error codes returned by the Bluetooth API. But at the end of the day
they were never used. The vast majority of method calls only really need a
true/false error value, and often not even that.

Methods which do need more detailed error enumeration (for example, bonding
failures) can have there own enumerated error codes. But there is no need
for a common set of error codes.

Also change the IPC failed warnings in BluetoothA2dp to Log.e. These indicate
a very serious error.

Introduce BluetoothAdapter.ERROR and BluetoothDevice.ERROR as helper sentinel
values.
luetoothA2dp.java
luetoothAdapter.java
luetoothDevice.java
luetoothError.java
BluetoothA2dp.aidl
de893f550301a60274e87aa8168225e7a7a42184 08-Sep-2009 Nick Pelly <npelly@google.com> API_CHANGE

Another round of Bluetooth API clean up, javadoc'ing and unhide'ing.

-- Symbols for getting/setting bluetooth state --
BluetoothAdapter.ACTION_STATE_CHANGED
BluetoothAdapter.EXTRA_STATE
BluetoothAdapter.EXTRA_PREVIOUS_STATE
BluetoothAdapter.STATE_OFF
BluetoothAdapter.STATE_TURNING_ON
BluetoothAdapter.STATE_ON
BluetoothAdapter.STATE_TURNING_OFF
BluetoothAdapter.isEnabled()
BluetoothAdapter.getState()
BluetoothAdapter.enable()
BluetoothAdapter.disable()

-- Symbols for getting/setting scan mode --
BluetoothAdapter.ACTION_SCAN_MODE_CHANGED
BluetoothAdapter.EXTRA_SCAN_MODE
BluetoothAdapter.EXTRA_PREVIOUS_SCAN_MODE
BluetoothAdapter.SCAN_MODE_NONE
BluetoothAdapter.SCAN_MODE_CONNECTABLE
BluetoothAdapter.SCAN_MODE_DISCOVERABLE
BluetoothAdapter.getScanMode()
BluetoothAdapter.setScanMode()

-- Symbols for getting address/names --
BluetoothAdapter.getAddress()
BluetoothAdapter.getName()
BluetoothAdapter.setName()
luetoothAdapter.java
luetoothDevice.java
luetoothError.java
luetoothIntent.java
cf44059813539bf7f36dabd278cef93ba3122c56 08-Sep-2009 Nick Pelly <npelly@google.com> Add javadoc to explain which permissions are required for Public BT API's.
luetoothAdapter.java
luetoothDevice.java
luetoothServerSocket.java
luetoothSocket.java
d4c1baf93708ad4e90c556e6041a498dbffaaba0 03-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 23646 into eclair

* changes:
Immediately destroy BluetoothSocket's on close().
71c3c7806acb2b2b7b8441817c26a2101d447bbe 02-Sep-2009 Nick Pelly <npelly@google.com> Immediately destroy BluetoothSocket's on close().

Unfortunatley, shutdown() on the underlying fd does not actually stop a
listening socket from listening. You need to call close() on the fd to
do this. There is no way around it.

So this means the Java BluetoothSocket code has to call destroyNative() during
BluetoothSocket.close().

Since native methods cannot be called after destroyNative(), add a ReadWrite
lock and mClosed field to protect access to native methods.

This fixes the "resource busy" error when Bluetooth OPP and Bluetooth PBAP
tried to resume listening after turning BT off and then on.
luetoothAdapter.java
luetoothInputStream.java
luetoothOutputStream.java
luetoothServerSocket.java
luetoothSocket.java
efa1dd716da3372cc74a201d11de5e0ef1a9fe9a 31-Aug-2009 Lixin Yue <L.X.YUE@motorola.com> Add Bluetooth Device trust
luetoothDevice.java
Bluetooth.aidl
9abcf0982edcda6d14fd8057fe0cfd2147cac477 19-Aug-2009 Jackson Fan <xyfan@motorola.com> Use correct UUID to authorize AVRCP
luetoothUuid.java
a4433af5ac677be7c1f63447c0cd78829bdee159 09-Jul-2009 Yue Lixin <a5206c@motorola.com> Add Bluetooth device picker support

- add Intent and Extra definition
- move profile filter into BluetoothClass
luetoothA2dp.java
luetoothClass.java
luetoothDevice.java
luetoothHeadset.java
luetoothIntent.java
45e2704ff512d41e22af2801d76e96955469ce8d 19-Aug-2009 Nick Pelly <npelly@google.com> API CHANGE

Javadoc, and unhide the first pieces of the Bluetooth API.

With this commit there is enough public API to connect and use an RFCOMM
connection between Bluetooth devices.
luetoothAdapter.java
luetoothDevice.java
luetoothServerSocket.java
luetoothSocket.java
bd022f423a33f0794bb53e5b0720da2d67e4631c 15-Aug-2009 Nick Pelly <npelly@google.com> Bluetooth: API change.

Split BluetoothDevice into BluetoothDevice and BluetoothAdapter.

BluetoothAdapter: Represents the local BT adapter. Operations on the local
adapter (start a scan, etc).
BluetoothDevice: Represents a remote BT device. Operations on remote devices
(pair, connect, etc).

IBluetoothDevice.aidl -> Bluetooth.aidl
BluetoothDeviceService.java -> BluetoothDeviceService.java

TODO:
Javadoc
luetoothA2dp.java
luetoothAdapter.java
luetoothAudioGateway.java
luetoothDevice.aidl
luetoothDevice.java
luetoothHeadset.java
luetoothIntent.java
luetoothPbap.java
luetoothServerSocket.java
luetoothSocket.java
eadsetBase.java
Bluetooth.aidl
BluetoothA2dp.aidl
BluetoothDevice.aidl
BluetoothHeadset.aidl
BluetoothPbap.aidl
a45c5f07e29c4b244d07842b80ba93b35ce2606c 31-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 9216

* changes:
Fix UUID typo and allow incoming AVRCP connections.
ade40526c899caf9369652f9481634a6232ec022 30-Jul-2009 Jaikumar Ganesh <jaikumar@google.com> Fix UUID typo and allow incoming AVRCP connections.
luetoothUuid.java
c8b04a93a619ba91997d7454865f0a71fb6ae981 27-Jul-2009 Jackson Fan <xyfan@motorola.com> Modify BluetoothPbap for a few wrong wordings
luetoothPbap.java
3f41673265dcaaef058703311c5481e8a51fd8be 02-Jul-2009 Jiafa Liu <pbx376@motorola.com> frameworks/base: Add PBAP support

- Update according to comments
- Add aidl support in frameworks for Settings to retrieve current
PBAP transaction status.
- Add status bar support for PBAP
luetoothPbap.java
BluetoothPbap.aidl
b0eca41de0bb6747d8648b134912782e45e4cbef 17-Jul-2009 Jaikumar Ganesh <jaikumar@google.com> Initial support of 2.1 pairing.

Note: Some cases have not been tested yet, as we would need to
get proper UI support.
luetoothDevice.java
luetoothIntent.java
BluetoothDevice.aidl
12cae39747c49e2886bcfbac9ec42094bdb32209 17-Jul-2009 Jaikumar Ganesh <jaikumar@google.com> Revert "Initial support of 2.1 pairing."

This reverts commit 228b2f3a813e93413a0f9e2f29dfbfc54590a356.
luetoothDevice.java
luetoothIntent.java
BluetoothDevice.aidl
228b2f3a813e93413a0f9e2f29dfbfc54590a356 17-Jul-2009 Jaikumar Ganesh <jaikumar@google.com> Initial support of 2.1 pairing.

Note: Some cases have not been tested yet, as we would need to
get proper UI support.
luetoothDevice.java
luetoothIntent.java
BluetoothDevice.aidl
7f74d534f39c4d1e1db8604faa117dcf127cc8b9 14-Jul-2009 Jaikumar Ganesh <jaikumar@google.com> Reconnect to A2DP device only if it supports that profile, fix HF AG UUID.
luetoothUuid.java
530b7125fa7a1055044fb618e196891ad01dd6ef 19-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 03255de3: Merge change 4757 into donut

Merge commit '03255de32d127d17504b6d475e6e79190dd637f8'

* commit '03255de32d127d17504b6d475e6e79190dd637f8':
Add getBatteryUsageHint() to BluetoothHeadset for power monitoring.
6c901db72dbaf57d8fdf26adae6721de14ecae22 19-Jun-2009 Nick Pelly <npelly@google.com> Add getBatteryUsageHint() to BluetoothHeadset for power monitoring.

This is a monotonically increasing integer. Wraps to 0 at
Integer.MAX_INT, and at boot.
Current implementation returns the number of AT commands handled since
boot. This is a good indicator for spammy headset/handsfree units that
can keep the device awake by polling for cellular status updates. As a
rule of thumb, each AT command prevents the CPU from sleeping for 500 ms
luetoothHeadset.java
eadsetBase.java
BluetoothHeadset.aidl
8edae3dfd3f594ca1b24c8365561f1f8c059440e 19-Jun-2009 Nick Pelly <npelly@google.com> Fix bug in BluetoothInputStream.read().

InputStream.read() must return values in range [0, 255]. But the previous code
would sign extend when casting to int so return [-128, 127]. Bitwise AND with
0xff to remove sign extension.
luetoothInputStream.java
d5ac1ae36b4e096eb97984334f86d0c68abea2f7 06-May-2009 Jaikumar Ganesh <jaikumar@google.com> Framework changes for bluez4.

Changes in the Bluetooth JNI calls and framework functions
for Bluez4.
luetoothDevice.java
luetoothUuid.java
BluetoothDevice.aidl
BluetoothDeviceCallback.aidl
6a669fac385b51b8bb01844b77a9a43840dda854 03-Jun-2009 Nick Pelly <npelly@google.com> Implement and expose SCO socket support in BluetoothSocket.java.

Implement L2CAP socket support, but do not expose it (untested).

NEXT: Switch to Builder style constructor instead of factory method.
luetoothServerSocket.java
luetoothSocket.java
47e82dee6b18c33fab8c2cdf4f68b20d3663079e 02-Jun-2009 Nick Pelly <npelly@google.com> Implement bulk read and writes for Bluetooth sockets.

Before: 0.1 kB/s
After: 100 kB/s
(in my java BT speed test app)
luetoothInputStream.java
luetoothOutputStream.java
luetoothSocket.java
0b6955a48bad9aee01ae2f0c06d3f168ca603ab7 27-May-2009 Nick Pelly <npelly@google.com> New BluetoothSocket API.

Modeled on blocking java.net.Socket and java.net.ServerSocket library.

Public interface is:

public final class BluetoothSocket implements Closeable {
public static BluetoothSocket createRfcommSocket(String address, int port) throws IOException;
public static BluetoothSocket createInsecureRfcommSocket(String address, int port) throws IOException;

public void connect() throws IOException;
public void close() throws IOException;

public String getAddress();
public InputStream getInputStream() throws IOException;
public OutputStream getOutputStream() throws IOException;
}

public final class BluetoothServerSocket implements Closeable {
public static BluetoothServerSocket listenUsingRfcommOn(int port) throws IOException;
public static BluetoothServerSocket listenUsingUnsecureRfcommOn(int port) throws IOException;

public BluetoothSocket accept() throws IOException;
public BluetoothSocket accept(int timeout) throws IOException;
public void close() throws IOException;

}
luetoothInputStream.java
luetoothOutputStream.java
luetoothServerSocket.java
luetoothSocket.java
fcommSocket.java
f5e17310d19494834466f237367452dfe1bd51cb 20-May-2009 Nick Pelly <npelly@google.com> Remove Database.java API.

This provided SDP functionality to Java, but is not currently used by any Apps.

I will shortly be providing SDP functionality in a new API, but it will be
quite different to this one, and in the mean-time keeping this stale code
updated with other API changes is a pain.
atabase.java
ea600ccfb7568f60377c4abc85f56c80af7fdbfc 31-Mar-2009 Nick Pelly <> AI 143788: am: CL 143740 Don't clear supported profiles in settings app if getRemoteClass returns error.
Also clean up the error codes returned by the framework, so that the settings app can properly detect an error.
Original author: npelly
Merged from: //branches/cupcake/...

Automated import of CL 143788
luetoothDevice.java
2b5be0748d160c6df1a9197272a776dc35879081 31-Mar-2009 Nick Pelly <> AI 143812: am: CL 143788 am: CL 143740 Don't clear supported profiles in settings app if getRemoteClass returns error.
Also clean up the error codes returned by the framework, so that the settings app can properly detect an error.
Original author: npelly
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...

Automated import of CL 143812
luetoothDevice.java
2d8c060bbc590c0f398c7a2c7a8b3e35111929f4 26-Mar-2009 Nick Pelly <> Automated import from //branches/donutburger/...@142766,142766
luetoothHeadset.java
b8088b9bc908e7fa1e803e55479e59aecc2c37eb 26-Mar-2009 Nick Pelly <> Automated import from //branches/master/...@142774,142774
luetoothHeadset.java
83557ec4f12b200a1d6f6ea13359a491bd952595 25-Mar-2009 Jaikumar Ganesh <> Automated import from //branches/master/...@141865,141865
eadsetBase.java
5903c977941c731cb4cc0df67cfeb2a3821c47ed 25-Mar-2009 Jaikumar Ganesh <> Automated import from //branches/donutburger/...@141864,141864
eadsetBase.java
105925376f8d0f6b318c9938c7b83ef7fef094da 19-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@140373
luetoothDevice.java
luetoothIntent.java
BluetoothDevice.aidl
BluetoothDeviceCallback.aidl
coSocket.java
ba87e3e6c985e7175152993b5efcc7dd2f0e1c93 13-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@138607
luetoothHeadset.java
luetoothIntent.java
f5b4b98fada53d91c4c2ebeb5a1d33ccc95c94d2 06-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@136745
luetoothA2dp.java
luetoothHeadset.java
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
tCommandHandler.java
tCommandResult.java
tParser.java
luetoothA2dp.java
luetoothAudioGateway.java
luetoothClass.java
luetoothDevice.java
luetoothError.java
luetoothHeadset.java
luetoothIntent.java
atabase.java
eadsetBase.java
BluetoothA2dp.aidl
BluetoothDevice.aidl
BluetoothDeviceCallback.aidl
BluetoothHeadset.aidl
fcommSocket.java
coSocket.java
ackage.html
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
tCommandHandler.java
tCommandResult.java
tParser.java
luetoothA2dp.java
luetoothAudioGateway.java
luetoothClass.java
luetoothDevice.java
luetoothError.java
luetoothHeadset.java
luetoothIntent.java
atabase.java
eadsetBase.java
BluetoothA2dp.aidl
BluetoothDevice.aidl
BluetoothDeviceCallback.aidl
BluetoothHeadset.aidl
fcommSocket.java
coSocket.java
ackage.html
076357b8567458d4b6dfdcf839ef751634cd2bfb 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@132589
luetoothDevice.java
3dec7d563a2f3e1eb967ce2054a00b6620e3558c 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@137055
luetoothDevice.java
3001a035439d8134a7d70d796376d1dfbff3cdcd 19-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@132276
coSocket.java
d24b8183b93e781080b2c16c487e60d51c12da31 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
luetoothDevice.java
luetoothHeadset.java
luetoothIntent.java
eadsetBase.java
BluetoothDevice.aidl
f1e484acb594a726fb57ad0ae4cfe902c7f35858 22-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@127436
luetoothDevice.java
luetoothIntent.java
BluetoothDevice.aidl
BluetoothDeviceCallback.aidl
22f7dfd23490a3de2f21ff96949ba47003aac8f8 20-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@127101
luetoothA2dp.java
luetoothHeadset.java
BluetoothA2dp.aidl
BluetoothHeadset.aidl
BluetoothHeadsetCallback.aidl
b798689749c64baba81f02e10cf2157c747d6b46 10-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@125939
luetoothA2dp.java
f013e1afd1e68af5e3b868c26a653bbfb39538f8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
luetoothA2dp.java
luetoothClass.java
luetoothDevice.java
luetoothError.java
luetoothHeadset.java
eviceClass.java
BluetoothA2dp.aidl
BluetoothHeadset.aidl
ackage.html
54b6cfa9a9e5b861a9930af873580d6dc20f773c 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
tCommandHandler.java
tCommandResult.java
tParser.java
luetoothAudioGateway.java
luetoothDevice.java
luetoothHeadset.java
luetoothIntent.java
atabase.java
eviceClass.java
eadsetBase.java
BluetoothDevice.aidl
BluetoothDeviceCallback.aidl
BluetoothHeadset.aidl
BluetoothHeadsetCallback.aidl
fcommSocket.java
coSocket.java
ackage.html