Commit Graph

112 Commits

Author SHA1 Message Date
Jaikumar Ganesh
cc5494c999 Out Of Band API for Secure Simple Pairing.
Change-Id: I54ded27ab85d46eef3d2cca84f2394b1ffe88ced
2010-09-13 11:40:21 -07:00
Jaikumar Ganesh
fec86f4aa2 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
2010-08-09 17:01:21 -07:00
Jaikumar Ganesh
f5ff170be1 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
2010-08-09 13:49:40 -07:00
Jaikumar Ganesh
f1048cdb68 Serialize all commands for a particular profile.
Change-Id: I843ea9ab0bb2372c8316e99e8c083a9939ad774a
2010-06-07 14:08:38 -07:00
Jaikumar Ganesh
740e39be6a 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
2010-06-02 16:03:51 -07:00
Jaikumar Ganesh
9b637e5985 Add a new state machine for handling the incoming / outgoing profile
connections.

Change-Id: I5fc9170b5e24c4a52a6f2ef4ca7a8bac65271941
2010-06-02 16:03:45 -07:00
Jaikumar Ganesh
af21fa61c2 Removing STOPSHIP logs.
Bug: 2694602
Change-Id: Id56e1ddcf5ea76de32238cd6761f2caf053f1fa1
2010-05-18 14:36:48 -07:00
Jaikumar Ganesh
c24dbdb57b Add an extra for the Disconnect Headset State.
This extra tells as to who initiated the disconnection.

Bug:2568119
Change-Id: Iea706ad69f79ae0257604dfa84d49126fb851cca
2010-04-05 14:43:59 -07:00
Eric Olsen
5e12aec163 Add the blacklist for the SCO connections
Change-Id: Ibfdfb21fb2f27d01d2b8bff48041398aa4308353
Signed-off-by: Eric Olsen <eolsen@android.com>
2010-03-18 18:08:02 -07:00
Eric Laurent
d726b35ebd 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
2010-03-17 19:11:59 -07:00
Kenny Root
15a4d2ffd0 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
9788976b14 core/java/android/accounts/AuthenticatorDescription.java
5333288354 core/java/android/app/UiModeManager.java
93e7e22ec9 core/java/android/app/FullBackupAgent.java
328c0e7986 core/java/android/content/CursorEntityIterator.java
307da1a46b core/java/android/content/SyncQueue.java
307da1a46b core/java/android/content/SyncOperation.java
eb034652c2 core/java/android/content/pm/LabeledIntent.java
49237345d8 core/java/android/content/pm/FeatureInfo.java
a2b6c3775e core/java/android/content/pm/PackageInfoLite.java
3ecd5f4375 core/java/android/content/pm/RegisteredServicesCacheListener.java
5ebbb4a6b3 core/java/android/content/pm/XmlSerializerAndParser.java
c4516a7b62 core/java/android/database/sqlite/SQLiteTransactionListener.java
9bbc21a773 core/java/com/android/internal/backup/LocalTransport.java
21f1bd17b2 core/java/com/android/internal/content/PackageMonitor.java
4c62fc0e1e core/java/com/android/internal/view/BaseSurfaceHolder.java
4c62fc0e1e core/java/com/android/internal/view/BaseIWindow.java
e540833fdf core/java/com/android/internal/os/SamplingProfilerIntegration.java
192ab90388 core/tests/coretests/src/android/widget/expandablelistview/PositionTesterContextMenuListener.java
1619367ab8 media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/MediaProfileReader.java
27f8002e59 opengl/tools/glgen/stubs/gles11/glGetString.java
560814f6b1 opengl/tools/glgen/stubs/gles11/glGetProgramInfoLog.java
560814f6b1 opengl/tools/glgen/stubs/gles11/glGetShaderInfoLog.java
560814f6b1 opengl/tools/glgen/stubs/gles11/glShaderSource.java
1c4907ee77 opengl/tools/glgen/src/GenerateGLES.java
1c4907ee77 opengl/tools/glgen/src/Jsr239CodeEmitter.java
1c4907ee77 opengl/tools/glgen/src/GLESCodeEmitter.java
69e21f5f6e opengl/tests/gldual/src/com/android/gldual/TriangleRenderer.java
c028be4f3b packages/DefaultContainerService/src/com/android/defcontainer/DefaultContainerService.java
7c6efa13f1 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerMeasurement.java
7c6efa13f1 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerTestActivity.java
7c6efa13f1 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerTestRunner.java
df8a3f31d8 tests/BrowserTestPlugin/src/com/android/testplugin/TestPlugin.java
cfaef699e1 tests/permission/src/com/android/framework/permission/tests/ActivityManagerPermissionTests.java
cfaef699e1 tests/permission/src/com/android/framework/permission/tests/ServiceManagerPermissionTests.java
cfaef699e1 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
2010-03-11 18:22:10 -08:00
Nick Pelly
ea5056e5a7 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
2010-02-24 11:19:10 -08:00
mah
a3a0946554 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.
2010-02-09 16:12:48 -08:00
Jaikumar Ganesh
987c415c83 am f5d2eec4: am 11b97c50: Merge change I551ed729 into eclair
Merge commit 'f5d2eec4fd530ac09ce1f8d2e51ea29b5cd12a38'

* commit 'f5d2eec4fd530ac09ce1f8d2e51ea29b5cd12a38':
  Use UNDEFINED priorities when unpaired.
2009-12-21 14:22:47 -08:00
Android (Google) Code Review
11b97c50e6 Merge change I551ed729 into eclair
* changes:
  Use UNDEFINED priorities when unpaired.
2009-12-21 14:17:15 -08:00
Scott Main
3a9b03425b am a2bca747: am a25032a0: Merge change Ic31c0f62 into eclair
Merge commit 'a2bca7477d803541c5a48cc7624e2b6c305c5970'

* commit 'a2bca7477d803541c5a48cc7624e2b6c305c5970':
  docs: update the Bluetooth guide with links to the sample
2009-12-18 17:18:54 -08:00
Scott Main
1362bbcf76 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.
2009-12-16 18:48:02 -08:00
Jaikumar Ganesh
551ed72940 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
2009-12-11 12:00:31 -08:00
Scott Main
7b0463a949 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,
2009-12-10 17:42:55 -08:00
Scott Main
ed2a70d649 docs: add the Bluetooth developer guide,
and make some revisions to the BT javadocs
2009-12-09 17:59:38 -08:00
Jaikumar Ganesh
b08170ad7e am ae88e2d1: Merge change I38227501 into eclair
Merge commit 'ae88e2d130a4d69bdf7ddc58f6ae512ea63087ff' into eclair-mr2

* commit 'ae88e2d130a4d69bdf7ddc58f6ae512ea63087ff':
  Add API to get Active Sinks.
2009-12-07 15:53:02 -08:00
Jaikumar Ganesh
b16c4f7dd9 Add API to get Active Sinks.
Allow incoming connections only when there are no active sinks.

Dr No: Eastham
Bug: 2133530
2009-12-07 15:20:31 -08:00
Jaikumar Ganesh
11a2853e01 am 8c411fb1: Merge change I79420b02 into eclair
Merge commit '8c411fb13923d1fa28fcd98452bf3d17b8b1a338' into eclair-mr2

* commit '8c411fb13923d1fa28fcd98452bf3d17b8b1a338':
  Add support for Car Dock.
2009-12-03 12:01:38 -08:00
Jaikumar Ganesh
3fbf7b62bb Add support for Car Dock.
Dr No: Eastham
Bug: 2133530
2009-12-03 11:35:37 -08:00
Jaikumar Ganesh
721361f1a7 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
2009-12-02 15:39:59 -08:00
Jaikumar Ganesh
249345ee5a 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.
2009-11-30 14:06:59 -08:00
Jaikumar Ganesh
aafff8a069 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.
2009-11-24 15:05:37 -08:00
Scott Main
cb5966426a 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
2009-11-20 10:00:28 -08:00
Scott Main
e16113998b 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
2009-11-20 09:54:22 -08:00
Scott Main
6d95fc0a2c docs for ESR: add docs to bluetooth explainin that discovery should
be cancelled before connecting to a device

bug: 2160782,2198463
2009-11-19 17:06:54 -08:00
Scott Main
b262f50af9 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.
2009-11-10 09:40:48 -08:00
Scott Main
13ce56bdbc am 88427cff: Merge change Ibcfb7d10 into eclair-sdk
Merge commit '88427cff609e668185010af2244500be5823595e' into eclair

* commit '88427cff609e668185010af2244500be5823595e':
  docs: add more documentation for the bluetooth apis.
2009-11-10 09:26:24 -08:00
Scott Main
9fab0aef19 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.
2009-11-09 18:09:12 -08:00
Michael Chan
811f655366 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
2009-11-06 13:33:06 -08:00
Michael Chan
cdd2864eb3 b/2234854 Fixed Bluetooth API return codes for requesting permission to enable bluetooth 2009-11-05 18:32:08 -08:00
Jaikumar Ganesh
bf2efbc064 am 3cf254d2: Merge change I4b3db907 into eclair
Merge commit '3cf254d2ba303da3354ed65fd7f3136e87a56b9f' into eclair-mr2

* commit '3cf254d2ba303da3354ed65fd7f3136e87a56b9f':
  Revert the channge where channels were not selected randomly.
2009-10-30 10:31:25 -07:00
Jaikumar Ganesh
4b3db907f0 Revert the channge where channels were not selected randomly.
The Bluez SDP bug has been fixed.
Reverting parts of the commit: 16fb88a673

Bug: 2173752
Dr No: Eastham
2009-10-30 09:37:25 -07:00
Nick Pelly
db7ae10d6b 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
2009-10-09 01:35:11 +02:00
Nick Pelly
e6ee3be1c2 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.
2009-10-09 01:35:10 +02:00
Jaikumar Ganesh
e5d93b7ed9 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
2009-10-08 04:25:45 -07:00
Nick Pelly
f242b7b931 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
2009-10-08 00:27:17 +02:00
Nick Pelly
16fb88a673 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 24bb9b8af4
- 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
2009-10-07 23:25:24 +02:00
Nick Pelly
52cde7279b Fix docs builds. 2009-10-06 16:10:02 +02:00
Nick Pelly
24bb9b8af4 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
2009-10-06 05:57:50 -07:00
Android (Google) Code Review
5a463a693c Merge change Ic2a16d4f into eclair
* changes:
  b/2148252 Fix emulator
2009-10-01 10:52:01 -04:00
Michael Chan
081f58abb7 b/2148252 Fix emulator
Change-Id: Ic2a16d4fac2a2a12a209c83ad2049829255cb31f
2009-09-30 18:14:08 -07:00
Jaikumar Ganesh
54172d92af 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
2009-09-30 17:46:17 -07:00
Nick Pelly
e766eae938 Fix broken build.
Should be bool not int. Forgot to roll in local changes to last commit.

Change-Id: I28bad88238e5b715a5033b0d5a897d924ef8b538
2009-09-30 12:06:28 -07:00
Zhu Lan
f9bbe1e71a Bluetooth A2DP suspend/resume functionality
Change-Id: I8366852fa9b6ff9dacf18db00ea1c2be0c00ff34
2009-09-29 20:50:02 -07:00
Nick Pelly
aef439e6f8 Move android.bluetooth.ParcelUuid to android.os.ParcelUuid
Change-Id: I564429d5c5b6a5372b6ff26a53b0d7e518b53631
2009-09-28 13:06:22 -07:00