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
* 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.
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
It doesn't work (yet) for IPv6, but we can remove v4-centric notions from the framework.
bug:2542681
Change-Id: I21c058f5c88d07706c9265bf0ea902fc90357e56
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
Multiple HID devices can be connected. There is no pointing
maintaining the global state. Check individual device state.
Bug: 3350904
Change-Id: I03d9a6015e39e4f9d7f68cc8bbdb19731129b4e6
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
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
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
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
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
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
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
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
Merge commit '2c1dab44834fb20deda9f380dae1bd7c1826b40b' into gingerbread-plus-aosp
* commit '2c1dab44834fb20deda9f380dae1bd7c1826b40b':
docs: fix typo; surface dev guide link in package description
Merge commit 'fda5b19c757645e957c2a224f269aefe39fb1e1c' into gingerbread
* commit 'fda5b19c757645e957c2a224f269aefe39fb1e1c':
docs: fix typo; surface dev guide link in package description