OSDN Git Service

android-x86/packages-apps-Bluetooth.git
8 years agoMerge "OPP: Use long instead of int"
Hemant Gupta [Wed, 23 Mar 2016 18:39:01 +0000 (18:39 +0000)]
Merge "OPP: Use long instead of int"
am: 245367e

* commit '245367e89200c59be5d65959e10e0a91a13dc288':
  OPP: Use long instead of int

8 years agoMerge "MAP: Fix ANR for blocking operations on UI thread"
Hemant Gupta [Wed, 23 Mar 2016 18:39:00 +0000 (18:39 +0000)]
Merge "MAP: Fix ANR for blocking operations on UI thread"
am: 5c20542

* commit '5c205429a8003a68fd189915c5265296388b9e08':
  MAP: Fix ANR for blocking operations on UI thread

8 years agoMerge "MAP: Track ProfileState, register and unregister of BroadcastReceivers"
Hemant Gupta [Wed, 23 Mar 2016 18:39:00 +0000 (18:39 +0000)]
Merge "MAP: Track ProfileState, register and unregister of BroadcastReceivers"
am: dc85454

* commit 'dc85454495d48056ca8bb190a908d4c9889583da':
  MAP: Track ProfileState, register and unregister of BroadcastReceivers

8 years agoMerge "OPP: Use long instead of int"
Andre Eisenbach [Wed, 23 Mar 2016 18:32:21 +0000 (18:32 +0000)]
Merge "OPP: Use long instead of int"

8 years agoOPP: Use long instead of int
Hemant Gupta [Thu, 10 Mar 2016 15:09:46 +0000 (20:39 +0530)]
OPP: Use long instead of int

Use long instead of int data type in OPP Java code to prevent
overflow of timestamp and filesize during transfer of large files
which caused transfer failures.

Change-Id: I58c9b49f59d47f6f162156eb6594e66731732580

8 years agoMerge "MAP: CleanUp for SDP record in MAP Service shutdown"
Hemant Gupta [Wed, 23 Mar 2016 18:30:55 +0000 (18:30 +0000)]
Merge "MAP: CleanUp for SDP record in MAP Service shutdown"
am: f9e3eaa

* commit 'f9e3eaa9528d75986a8e50a97c73692e4c9ba638':
  MAP: CleanUp for SDP record in MAP Service shutdown

8 years agoMerge "MAP: GETMessagesLisitng include mandatory field always."
Hemant Gupta [Wed, 23 Mar 2016 18:30:55 +0000 (18:30 +0000)]
Merge "MAP: GETMessagesLisitng include mandatory field always."
am: 68277e5

* commit '68277e56f5ba90d51e83f5b0027b97f8c9add354':
  MAP: GETMessagesLisitng include mandatory field always.

8 years agoMerge "MAP: Fix ANR for blocking operations on UI thread"
Andre Eisenbach [Wed, 23 Mar 2016 18:29:42 +0000 (18:29 +0000)]
Merge "MAP: Fix ANR for blocking operations on UI thread"

8 years agoMAP: Fix ANR for blocking operations on UI thread
Hemant Gupta [Fri, 11 Mar 2016 07:48:22 +0000 (13:18 +0530)]
MAP: Fix ANR for blocking operations on UI thread

UseCase:
    Stability Testing steps followed:
    1. Pair and connect with remote phone.
    2. Verify successful profile connection.
    3. Pair & Connect LE device.
    4. Disconnect & Unpair LE device.
    5. Reset BT multiple times.
    6. Repeat above steps 50 times

Failure:
    ANR(s) reported for long running operations perfromed on main thread.

Fix:
    -  Attach MAPService session handler to looper from a
       worker thread to avoid long running tasks handling
       for messages posted from UI thread.

    -  Move AppObserver Account onChange() handling
       to worker thread instead of UI thread.

    -  Avoid running contentobserver for SMS/MMS instance on
       main thread looper to  fix ANR reported while handling
       content changes for SMS and MMS listing. Add NPE checks
       hit during stability testing.

Change-Id: Ie146cd284fd191f7c7be7f0c1e7ed4877b36ae76

8 years agoMerge "MAP: Track ProfileState, register and unregister of BroadcastReceivers"
Andre Eisenbach [Wed, 23 Mar 2016 18:25:44 +0000 (18:25 +0000)]
Merge "MAP: Track ProfileState, register and unregister of BroadcastReceivers"

8 years agoMerge "MAP: Cleanup PendingIntent in cancelUserTimeoutAlarm."
Ashwini Munigala [Wed, 23 Mar 2016 18:23:19 +0000 (18:23 +0000)]
Merge "MAP: Cleanup PendingIntent in cancelUserTimeoutAlarm."
am: da10fe7

* commit 'da10fe73a8f19cc4e28213bd353b412aca5680f2':
  MAP: Cleanup PendingIntent in cancelUserTimeoutAlarm.

8 years agoMAP: Track ProfileState, register and unregister of BroadcastReceivers
Hemant Gupta [Fri, 11 Mar 2016 07:04:25 +0000 (12:34 +0530)]
MAP: Track ProfileState, register and unregister of BroadcastReceivers

Use Case:
1. Pair and connect with remote phone.
2. Verify successful profile connection.
3. Pair & Connect LE device.
4. Disconnect & Unpair LE device.
5. Reset BT multiple times.
6. Repeat above steps 50 times

Failure:
BT Crashed, failed to start MAP services after BT reset.

RootCause:
BT Crash for not handling following exceptions:

 - java.lang.IllegalArgumentException: Receiver not registered
   at: android.app.IntentReceiverLeaked: Service
   com.android.bluetooth.map.BluetoothMapService
   has leaked IntentReceiver com.android.bluetooth.map.BluetoothMapAppObserver:
   Are you missing a call to unregisterReceiver()?

Fix:
 - This issue is hit when onStop() for MAPService is triggered without onStart()
   being triggered by the time shutdown process gets invoked.
 - Track registration and unregistration for BluetoothMapAppObserver BroadcastReceiver
   to fix IntentReceiver leaks and also added validation for the AppObserver Data.

Change-Id: Ia1c2160fef369bbff42e8da3ea7d925c483e0a12

8 years agoMerge "MAP: CleanUp for SDP record in MAP Service shutdown"
Andre Eisenbach [Wed, 23 Mar 2016 18:20:13 +0000 (18:20 +0000)]
Merge "MAP: CleanUp for SDP record in MAP Service shutdown"

8 years agoMAP: CleanUp for SDP record in MAP Service shutdown
Hemant Gupta [Fri, 11 Mar 2016 06:35:24 +0000 (12:05 +0530)]
MAP: CleanUp for SDP record in MAP Service shutdown

Remove SDP record per MAS Instance during MAP Service
shutdown procedure.
Add more relevant debug logging.

Change-Id: I222ad97d719b9a2c45db3ab8526dd3de9c553f3d

8 years agoMerge "MAP: GETMessagesLisitng include mandatory field always."
Andre Eisenbach [Wed, 23 Mar 2016 18:16:43 +0000 (18:16 +0000)]
Merge "MAP: GETMessagesLisitng include mandatory field always."

8 years agoMerge "MAP: Handle possible NPE while disconnect map."
Ashwini Munigala [Wed, 23 Mar 2016 18:14:44 +0000 (18:14 +0000)]
Merge "MAP: Handle possible NPE while disconnect map."
am: 7cbec75

* commit '7cbec75e7310370c6cb03cfcc48dc4ff1db951c8':
  MAP: Handle possible NPE while disconnect map.

8 years agoMerge "MAP: Add MNS SDP Search during setNotificationRegistration."
Ashwini Munigala [Wed, 23 Mar 2016 18:14:44 +0000 (18:14 +0000)]
Merge "MAP: Add MNS SDP Search during setNotificationRegistration."
am: 9556063

* commit '9556063902bda98d28a0942509f94ea6973ebba9':
  MAP: Add MNS SDP Search during setNotificationRegistration.

8 years agoMerge "MAP: Declare and fetch only \'INTERESTED_MESSAGE_TYPE_CLAUSE\' MMS."
Hemant Gupta [Wed, 23 Mar 2016 18:14:44 +0000 (18:14 +0000)]
Merge "MAP: Declare and fetch only \'INTERESTED_MESSAGE_TYPE_CLAUSE\' MMS."
am: 5bc6229

* commit '5bc6229907607e2857e603f4a5010851b3479b7d':
  MAP: Declare and fetch only 'INTERESTED_MESSAGE_TYPE_CLAUSE' MMS.

8 years agoMAP: GETMessagesLisitng include mandatory field always.
Hemant Gupta [Fri, 11 Mar 2016 05:41:33 +0000 (11:11 +0530)]
MAP: GETMessagesLisitng include mandatory field always.

Pre condition:
Atleast one SMS is present in any of the folders
with no subject.

UseCase:
1. Connect MAP connection from MCE to DUT
2. Set folder to Telecom/msg/inbox
3. Execute MessageListing with the required data

Failure:
Mandatory field "subject" is not included for few entries
in messagesListing.

Fix:
For GETMessagesLisitng  ensure blank subject string is
set to include this mandatory feild and handle possible
"null" value fetched from database.

Change-Id: Ie29a61c83b22db9008184090a2f5b17d1f34b72b

8 years agoMerge "MAP: Cleanup PendingIntent in cancelUserTimeoutAlarm."
Andre Eisenbach [Wed, 23 Mar 2016 18:13:01 +0000 (18:13 +0000)]
Merge "MAP: Cleanup PendingIntent in cancelUserTimeoutAlarm."

8 years agoMAP: Cleanup PendingIntent in cancelUserTimeoutAlarm.
Ashwini Munigala [Thu, 7 Jan 2016 12:30:58 +0000 (18:00 +0530)]
MAP: Cleanup PendingIntent in cancelUserTimeoutAlarm.

Handle cleanup for timeout Intent and pending Intent
in cancelUserTimeoutAlarm API.

Change-Id: I4f4184785675b2deffa3be8c9dd70b2673020b51

8 years agoMerge "MAP: Synchronize notifcationReg reply and MNS connect action."
Hemant Gupta [Wed, 23 Mar 2016 18:06:42 +0000 (18:06 +0000)]
Merge "MAP: Synchronize notifcationReg reply and MNS connect action."
am: 075283f

* commit '075283fe6272b77521511bf26ac2516146532cbc':
  MAP: Synchronize notifcationReg reply and MNS connect action.

8 years agoMerge "MAP: Synchronize mMsgList to avoid extra MessageDeleted MNS event"
Hemant Gupta [Wed, 23 Mar 2016 18:06:42 +0000 (18:06 +0000)]
Merge "MAP: Synchronize mMsgList to avoid extra MessageDeleted MNS event"
am: 3b377be

* commit '3b377bee36cd6f5427f48feaa4f921a6d902cf01':
  MAP: Synchronize mMsgList to avoid extra MessageDeleted MNS event

8 years agoMerge "MAP: Handle possible NPE while disconnect map."
Andre Eisenbach [Wed, 23 Mar 2016 18:06:28 +0000 (18:06 +0000)]
Merge "MAP: Handle possible NPE while disconnect map."

8 years agoMAP: Handle possible NPE while disconnect map.
Ashwini Munigala [Tue, 27 Oct 2015 10:54:23 +0000 (16:24 +0530)]
MAP: Handle possible NPE while disconnect map.

Precondition:
Verified with IOT: MecApp in MCE role

UseCase:
1. Connect MAS
2. Register Mas Instance via MNS
3. Disconnect MAS

Failure:
Bluetooth App crash sometimes when disconnect map profile.

Root Cause:
The issue is hit when MAS disconnect is finished before MNS unregister.
In this case NullpointerException is happening because of clearing
BluetoothMapContentObserver already as a part of cleanup.

Fix:
Handle Null pointer exception while last
MAS instance disconnect is handled before MNS
unregistration.

Change-Id: I4e72038a5ddc6c3ac8c515def57cb4f98fe87675

8 years agoMerge "MAP: Add MNS SDP Search during setNotificationRegistration."
Andre Eisenbach [Wed, 23 Mar 2016 18:04:17 +0000 (18:04 +0000)]
Merge "MAP: Add MNS SDP Search during setNotificationRegistration."

8 years agoMAP: Add MNS SDP Search during setNotificationRegistration.
Ashwini Munigala [Thu, 10 Sep 2015 13:02:05 +0000 (18:32 +0530)]
MAP: Add MNS SDP Search during setNotificationRegistration.

Precondition:
Verified with remote MCE device that starts MNS server
only before issuing setNotification Registration to MSE.

Use Case:
1. Discover and Pair with MSE from MCE.
2. Connect to MSE on Mas insance 0.
3. Enable Notification Registration for MAS Instance 0

Failure:
MNS connection happens over RFCOMM
and MAS Instance is connected over L2CAP.

Root Cause:
Current design performs MNS SDP search only at the time
of successful MAS Instance Connect. MNS connect implementation
tries connection over insecure RFCOMM channel based on UUID
when MNS Server record is not available.

Fix:
Add implementation to check and perform MNS SDP search
if this info is not available when MCE requests
setNotificationRegistration. This fix is required to
handle MCE implementation that start MNS Sever and
expose SDP only before sending setNotificationRegistration.

Change-Id: If1e8d33dcac078f04d13b8bacf8e1d1513c119e1

8 years agoMerge "MAP: Declare and fetch only 'INTERESTED_MESSAGE_TYPE_CLAUSE' MMS."
Andre Eisenbach [Wed, 23 Mar 2016 18:02:28 +0000 (18:02 +0000)]
Merge "MAP: Declare and fetch only 'INTERESTED_MESSAGE_TYPE_CLAUSE' MMS."

8 years agoMAP: Declare and fetch only 'INTERESTED_MESSAGE_TYPE_CLAUSE' MMS.
Hemant Gupta [Tue, 22 Dec 2015 13:27:58 +0000 (18:57 +0530)]
MAP: Declare and fetch only 'INTERESTED_MESSAGE_TYPE_CLAUSE' MMS.

Precondition:

Messaging App Settings configured to receive delivery reports for MMS.

Use Case:
Follow standard steps to perform messagesListing type MMS from MCE.
1. Connect to MSE on Mas instance 0.
2. Set Path to root.
3. Set Path to telecom.
4. Set Path to msg.
5. Set Path to inbox.
6. GET messagesListing type MMS.

Failure:
Extra entries like delivery reports that are stored in DB and
which are not user interested types are also included
in MSE messageListing for MMS type.

Fix:
OMA-TS-MMS-ENC MMS Standard defines many types in X-Mms-Message-Type.
Extra entries like delivery reports which is stored in DB are not
required to be shown to user, so these should be filtered, and
only  m-send-req (128), m-retrieve-conf (132), m-notification-ind (130)
types should be fetched and shown to user in messageListing response.
This patch removes these unecessary message types from MMS Messaging Listing.

Change-Id: I1cb5d6e58477a32a89693f555a268e0855267b9a

8 years agoMerge "MAP: Synchronize notifcationReg reply and MNS connect action."
Andre Eisenbach [Wed, 23 Mar 2016 17:59:17 +0000 (17:59 +0000)]
Merge "MAP: Synchronize notifcationReg reply and MNS connect action."

8 years agoMAP: Synchronize notifcationReg reply and MNS connect action.
Hemant Gupta [Mon, 21 Sep 2015 15:29:07 +0000 (20:59 +0530)]
MAP: Synchronize notifcationReg reply and MNS connect action.

Use Case:
1. Connect to carkit
2. Disconnect connection with carkit.
3. Reconnect to carkit

Failure:
MNS Failure during Reconnection.
User will in some timing conditions not get notification
of new messages and then turns OFF/ON the carkit.
MAS is connected fine but for MNS car sends BAD REQUEST.

Root Cause:
This isssue is reported only with one particular carkit in MCE role,
where in MNS Connect request issued before acknowleding
the setNotificationReg Request.

Fix:
Synchronize handleRegistration method in handler thread to ensure
setNotificationReg response from MSE is sent before requesting
a MNS Connect to MCE.

Change-Id: I30559c643af7733754fce551b97e31543a0cb160

8 years agoMerge "MAP: Synchronize mMsgList to avoid extra MessageDeleted MNS event"
Andre Eisenbach [Wed, 23 Mar 2016 17:57:23 +0000 (17:57 +0000)]
Merge "MAP: Synchronize mMsgList to avoid extra MessageDeleted MNS event"

8 years agoMAP: Synchronize mMsgList to avoid extra MessageDeleted MNS event
Hemant Gupta [Fri, 21 Aug 2015 10:08:44 +0000 (15:38 +0530)]
MAP: Synchronize mMsgList to avoid extra MessageDeleted MNS event

Precondition:
There are no messages in Messaging App.

Use Case:
1. Connect to MSE on Mas insance 0,
   Register and Enable Event Notifications from any MCE.
2. Set Path to root.
3. Set Path to telecom.
4. Set Path to msg.
5. Set Path to outbox.
6. Compose an SMS and add the recipient.
7. Click PushMessage option.

Failure:
Map Server sends a unexpected MessageDeleted EventReport Notification
even though PushMessage received from MCE is processed Successfully.

Root Cause:
Issue happens only for one corner case, where onChange() gets triggered
while processing a local initiated pushMsg before the entry is appended
to database, as local MsgListSms contains an extra entry for newly added
msg from MCE.

Fix:
Synchronize contentObserver mMsgList SMS/MMS to update list with
local initiated changes before fetching complete database list and
handling onChange() to avoid extra MessageDeleted MNS event.

Change-Id: Id4d5dad4d2b4b1e17f40218c11d13e39c9b885a0

8 years agoMerge "Send error for if VR is initiated during call."
Satish Kodishala [Wed, 23 Mar 2016 17:42:53 +0000 (17:42 +0000)]
Merge "Send error for if VR is initiated during call."
am: a43811a

* commit 'a43811a9c6945aeb8c5ca8a15412c5913e2dad24':
  Send error for if VR is initiated during call.

8 years agoMerge "Send error for if VR is initiated during call."
Andre Eisenbach [Wed, 23 Mar 2016 17:23:41 +0000 (17:23 +0000)]
Merge "Send error for if VR is initiated during call."

8 years agoSend error for if VR is initiated during call.
Satish Kodishala [Fri, 29 Jan 2016 06:39:32 +0000 (12:09 +0530)]
Send error for if VR is initiated during call.

Use case:
Connect to BT headset.
Make a call. Let the call audio be on BT headset.
Initiate voice recognition(VR) from BT headset.

Failure:
AG is not sending error for VR when initiated during call.
Headset might go into bad state if AG don't send error.

Rootcause:
AG is not sending error for VR when initiated during call.

Fix:
When VR is activated during call, send error response to headset.

Change-Id: Ib12d464fc6a6948ddf22250a65a9e5bfeb4a8fb1

8 years agoMerge "Fix register for notification logic"
Jakub Pawlowski [Wed, 23 Mar 2016 16:07:17 +0000 (16:07 +0000)]
Merge "Fix register for notification logic"
am: 39c5072

* commit '39c50726f567c224ac9cc2244b389043e5c41234':
  Fix register for notification logic

8 years agoFix register for notification logic
Jakub Pawlowski [Tue, 22 Mar 2016 22:48:15 +0000 (22:48 +0000)]
Fix register for notification logic
am: 55296d1

* commit '55296d1fb8e3daef4681205a9591f0af522b099e':
  Fix register for notification logic

8 years agoFix register for notification logic
Jakub Pawlowski [Tue, 22 Mar 2016 22:32:55 +0000 (15:32 -0700)]
Fix register for notification logic

Bug: 27790582
Change-Id: I118071b907ec16faad401ba6583ca395d08d6d6e

8 years agoMerge "Fix register for notification logic"
Andre Eisenbach [Tue, 22 Mar 2016 22:40:33 +0000 (22:40 +0000)]
Merge "Fix register for notification logic"

8 years agoFix register for notification logic
Jakub Pawlowski [Tue, 22 Mar 2016 22:32:55 +0000 (15:32 -0700)]
Fix register for notification logic

Bug: 27790582
Change-Id: I118071b907ec16faad401ba6583ca395d08d6d6e

8 years agoMerge "PBAP abort operations when disconnected" into nyc-dev
Joseph Pirozzo [Tue, 22 Mar 2016 21:07:42 +0000 (21:07 +0000)]
Merge "PBAP abort operations when disconnected" into nyc-dev
am: d7bdccf

* commit 'd7bdccf934d5dfb7407dd024f44dbaf93b7d193b':
  PBAP abort operations when disconnected

8 years agoMerge "PBAP abort operations when disconnected" into nyc-dev
Joseph Pirozzo [Tue, 22 Mar 2016 20:57:43 +0000 (20:57 +0000)]
Merge "PBAP abort operations when disconnected" into nyc-dev

8 years agoUse handles to identify GATT attributes (3/4)
Jakub Pawlowski [Tue, 22 Mar 2016 03:57:53 +0000 (03:57 +0000)]
Use handles to identify GATT attributes (3/4)
am: 32dc7a6  -s ours

* commit '32dc7a6b919375aede777f3c821fa316d85449ae':
  Use handles to identify GATT attributes (3/4)

8 years agoChange how services are passed up to the stack
Jakub Pawlowski [Tue, 22 Mar 2016 03:55:14 +0000 (03:55 +0000)]
Change how services are passed up to the stack
am: 02a821a  -s ours

* commit '02a821a0df99bdef55d2282530e13541fee8d36f':
  Change how services are passed up to the stack

8 years agoUse handles to identify GATT attributes (3/4)
Jakub Pawlowski [Thu, 17 Mar 2016 22:58:19 +0000 (15:58 -0700)]
Use handles to identify GATT attributes (3/4)

Bug: 27778668
Change-Id: Id6ec1229998c9fc2ecd4d0a908405a7148703bec

8 years agoRemove unused callbacks
Jakub Pawlowski [Tue, 22 Mar 2016 03:03:19 +0000 (03:03 +0000)]
Remove unused callbacks
am: 8c33841

* commit '8c33841d0ff37379f1090a8c72d1c7beeaefd2ac':
  Remove unused callbacks

8 years agoGet whole GATT db, instead of one by one element.
Jakub Pawlowski [Tue, 22 Mar 2016 03:03:19 +0000 (03:03 +0000)]
Get whole GATT db, instead of one by one element.
am: aa935f9  -s ours

* commit 'aa935f98f6c200298325027705b9ea031fce3467':
  Get whole GATT db, instead of one by one element.

8 years agoChange how services are passed up to the stack
Jakub Pawlowski [Wed, 2 Mar 2016 00:09:14 +0000 (16:09 -0800)]
Change how services are passed up to the stack

Bug: 27455533
Change-Id: I4c8218fb4c7437ab4597071ad9b580a797e34339

8 years agoRemove unused callbacks
Jakub Pawlowski [Thu, 3 Mar 2016 23:00:46 +0000 (15:00 -0800)]
Remove unused callbacks

Bug: 27455533
Change-Id: I743b8ba7187a397f088ac720f239e368dd84a7a2

8 years agoGet whole GATT db, instead of one by one element.
Jakub Pawlowski [Fri, 26 Feb 2016 20:01:36 +0000 (12:01 -0800)]
Get whole GATT db, instead of one by one element.

This patch uses new get_gatt_db method instead of current set of
callback to obtain GATT db.t

Bug: 27455533
Change-Id: I52e12253dd850ce8de35297c941638189cbbed1e

8 years agoMerge "Use handles to identify GATT attributes (3/4)"
Jakub Pawlowski [Tue, 22 Mar 2016 02:47:18 +0000 (02:47 +0000)]
Merge "Use handles to identify GATT attributes (3/4)"
am: 65acaf4

* commit '65acaf4cd11df55c810984184513aeb7205fb538':
  Use handles to identify GATT attributes (3/4)

8 years agoMerge "Use handles to identify GATT attributes (3/4)"
Andre Eisenbach [Tue, 22 Mar 2016 02:35:57 +0000 (02:35 +0000)]
Merge "Use handles to identify GATT attributes (3/4)"

8 years agoUse handles to identify GATT attributes (3/4)
Jakub Pawlowski [Thu, 17 Mar 2016 22:58:19 +0000 (15:58 -0700)]
Use handles to identify GATT attributes (3/4)

Bug: 27778668
Change-Id: Id6ec1229998c9fc2ecd4d0a908405a7148703bec

8 years agoMerge changes I38c8ec64,Iac544226
Andre Eisenbach [Tue, 22 Mar 2016 01:17:38 +0000 (01:17 +0000)]
Merge changes I38c8ec64,Iac544226
am: a72735c

* commit 'a72735cdea8b2cfe15bd03826d4881dedda8004c':
  Make sure wakelock is held before releaseing it
  Do not delete/re-create wakelock on acquisition/release

8 years agoMerge changes I38c8ec64,Iac544226
Andre Eisenbach [Tue, 22 Mar 2016 01:04:45 +0000 (01:04 +0000)]
Merge changes I38c8ec64,Iac544226

* changes:
  Make sure wakelock is held before releaseing it
  Do not delete/re-create wakelock on acquisition/release

8 years agoMake sure wakelock is held before releaseing it
Andre Eisenbach [Mon, 21 Mar 2016 17:15:30 +0000 (10:15 -0700)]
Make sure wakelock is held before releaseing it

Bug: 27748109
Change-Id: I38c8ec640f5def7c53348d2dd96a0a2492ff00cc

8 years agoDo not delete/re-create wakelock on acquisition/release
Andre Eisenbach [Thu, 17 Mar 2016 23:49:59 +0000 (16:49 -0700)]
Do not delete/re-create wakelock on acquisition/release

Also provide additional status for wakelock acquisition/release errors.

Bug: 27721443
Change-Id: Iac544226fed4a73a50bd954e74d96edd4bed93d2

8 years agoPBAP abort operations when disconnected
Joseph Pirozzo [Mon, 21 Mar 2016 21:23:06 +0000 (14:23 -0700)]
PBAP abort operations when disconnected

Push long running activities relating to the contacts database onto its
own thread such that the main service thread can remain responsive to
new bluetooth requests.

Bug: 27697738
Change-Id: I0202962a49d6a0279b5672152955840dd02bdf31

8 years agoForward in iPhone leads to play state being presisted as STOP.
Sanket Agarwal [Mon, 21 Mar 2016 23:42:00 +0000 (23:42 +0000)]
Forward in iPhone leads to play state being presisted as STOP.
am: 26469ff

* commit '26469ff3f9f4ab96ad288e0934220023a0c159f1':
  Forward in iPhone leads to play state being presisted as STOP.

8 years agoForward in iPhone leads to play state being presisted as STOP.
Sanket Agarwal [Mon, 21 Mar 2016 21:00:30 +0000 (14:00 -0700)]
Forward in iPhone leads to play state being presisted as STOP.

When we press forward in iPhone (via AVRCP pass through or iPhone UI)
while connected over AVRCP we are resetting the state and expecting
AVRCP to give us a new play state when next song resumes. Turns out that
iPhone always keeps it state to be Playing.

The fix is to keep the mRemoteMediaPlayers a replica of what AVRCP says
so that when song resumes (from A2dpSinkService via startAvrcpUpdates)
we can restore the playing state.

Tested on iPhone and regression tested on Nexus 5X.

Bug: b/27768620
Change-Id: I8caf56072fa5743f28e1680860c161d3cd75b83c

8 years agoMake sure wakelock is held before releaseing it
Andre Eisenbach [Mon, 21 Mar 2016 18:44:39 +0000 (18:44 +0000)]
Make sure wakelock is held before releaseing it
am: e94f8eb

* commit 'e94f8eb85b68b351319499337af937835730b508':
  Make sure wakelock is held before releaseing it

8 years agoMake sure wakelock is held before releaseing it
Andre Eisenbach [Mon, 21 Mar 2016 17:15:30 +0000 (10:15 -0700)]
Make sure wakelock is held before releaseing it

Bug: 27748109
Change-Id: I38c8ec640f5def7c53348d2dd96a0a2492ff00cc

8 years agoMerge "Add scan results to scan stats"
Ajay Panicker [Mon, 21 Mar 2016 16:28:51 +0000 (16:28 +0000)]
Merge "Add scan results to scan stats"
am: 7296f05

* commit '7296f0530c435e88df31d08519705a0517943b5a':
  Add scan results to scan stats

8 years agoMerge "Add scan results to scan stats"
Ajay Panicker [Mon, 21 Mar 2016 16:21:28 +0000 (16:21 +0000)]
Merge "Add scan results to scan stats"

8 years agoAdd scan results to scan stats
Ajay Panicker [Wed, 9 Mar 2016 03:54:18 +0000 (19:54 -0800)]
Add scan results to scan stats

Ex:
GATT Client Map
  Entries: 1

  no.nordicsemi.android.mcp
  LE scans (started/stopped)         : 3 / 3
  Scan time in ms (min/max/avg/total): 3050 / 6901 / 4815 / 14447
  Total number of results            : 338
  Last 3 scans                       :
    1970/01/01 08:20:06 - 6901ms 0 results
    1970/01/01 08:20:13 - 4496ms 171 results
    1970/01/01 08:20:39 - 3050ms 167 results

Bug: 27294154
Change-Id: I32fd6da035f2c37302a105733ac6a9817547b7a3

8 years agoImport translations. DO NOT MERGE
Geoff Mendal [Sat, 19 Mar 2016 03:55:30 +0000 (03:55 +0000)]
Import translations. DO NOT MERGE
am: 07b9677  -s ours

* commit '07b967727271adcb2d41c2037d9cfc22df223c2d':
  Import translations. DO NOT MERGE

8 years agoImport translations. DO NOT MERGE
Geoff Mendal [Sat, 19 Mar 2016 03:39:57 +0000 (04:39 +0100)]
Import translations. DO NOT MERGE

Change-Id: I6df2f8330fbce97f53729c931fe78e1a77482107
Auto-generated-cl: translation import

8 years agoMerge "Change how services are passed up to the stack"
Jakub Pawlowski [Fri, 18 Mar 2016 22:32:05 +0000 (22:32 +0000)]
Merge "Change how services are passed up to the stack"
am: d8166b9

* commit 'd8166b935f0a973b52b74149ae542146e4b30df2':
  Change how services are passed up to the stack

8 years agoMerge "Change how services are passed up to the stack"
Andre Eisenbach [Fri, 18 Mar 2016 22:11:51 +0000 (22:11 +0000)]
Merge "Change how services are passed up to the stack"

8 years agoDo not delete/re-create wakelock on acquisition/release
Andre Eisenbach [Fri, 18 Mar 2016 01:36:21 +0000 (01:36 +0000)]
Do not delete/re-create wakelock on acquisition/release
am: 00a465e

* commit '00a465ed6160246b369629b6777836a4d1b11834':
  Do not delete/re-create wakelock on acquisition/release

8 years agoDo not delete/re-create wakelock on acquisition/release
Andre Eisenbach [Thu, 17 Mar 2016 23:49:59 +0000 (16:49 -0700)]
Do not delete/re-create wakelock on acquisition/release

Also provide additional status for wakelock acquisition/release errors.

Bug: 27721443
Change-Id: Iac544226fed4a73a50bd954e74d96edd4bed93d2

8 years agoChange how services are passed up to the stack
Jakub Pawlowski [Wed, 2 Mar 2016 00:09:14 +0000 (16:09 -0800)]
Change how services are passed up to the stack

Bug: 27455533
Change-Id: I4c8218fb4c7437ab4597071ad9b580a797e34339

8 years agoDisable Account Authenticator
Joseph Pirozzo [Thu, 17 Mar 2016 23:27:59 +0000 (23:27 +0000)]
Disable Account Authenticator
am: 4254383

* commit '4254383b457ccfcd78fda1bf52f6f9df141df5d6':
  Disable Account Authenticator

8 years agoDisable Account Authenticator
Joseph Pirozzo [Thu, 17 Mar 2016 22:06:46 +0000 (15:06 -0700)]
Disable Account Authenticator

Conditionally disable account authenticator when pbap client service is
unavailable.

Bug: 27689917
Change-Id: Ia215b40805568e10f44b6c784abbfd9d39586bdf

8 years agoImplement PBAP PCE client role service.
Joseph Pirozzo [Tue, 15 Mar 2016 23:29:49 +0000 (23:29 +0000)]
Implement PBAP PCE client role service.
am: b874a1d1cf

* commit 'b874a1d1cf25f90947ba87f791d42a404cad7d85':
  Implement PBAP PCE client role service.

8 years agoImplement PBAP PCE client role service.
Joseph Pirozzo [Wed, 9 Mar 2016 23:22:11 +0000 (15:22 -0800)]
Implement PBAP PCE client role service.

Migrate code from frameworks/opt/bluetooth for pbap client to support
pbap as a bluetooth profile.

Bug: 27490041
Change-Id: I7a486af1c58d17ee10348aae044786df670a781e

8 years agoMerge "HFP is exposed via Telecom ConnectionService." into nyc-dev
Sanket Agarwal [Mon, 14 Mar 2016 23:00:08 +0000 (23:00 +0000)]
Merge "HFP is exposed via Telecom ConnectionService." into nyc-dev
am: 8b9e874162

* commit '8b9e874162c99178d0a3a857dce1f76ebfc55b57':
  HFP is exposed via Telecom ConnectionService.

8 years agoMerge "HFP is exposed via Telecom ConnectionService." into nyc-dev
Sanket Agarwal [Mon, 14 Mar 2016 22:58:01 +0000 (22:58 +0000)]
Merge "HFP is exposed via Telecom ConnectionService." into nyc-dev

8 years agoPrint bluetooth state as a string
Ajay Panicker [Mon, 14 Mar 2016 22:36:38 +0000 (22:36 +0000)]
Print bluetooth state as a string
am: 41093afc1f

* commit '41093afc1f5a9109f414e942985f25e74758e8c6':
  Print bluetooth state as a string

8 years agoPrint bluetooth state as a string
Ajay Panicker [Mon, 14 Mar 2016 19:56:20 +0000 (12:56 -0700)]
Print bluetooth state as a string

Bug: 27294154
Change-Id: I992f720d94be1f0762424ebad36ec1b6af58600b

8 years agoMerge "Print bluetooth state as a string"
Ajay Panicker [Mon, 14 Mar 2016 20:58:26 +0000 (20:58 +0000)]
Merge "Print bluetooth state as a string"
am: e3a3acf3e0

* commit 'e3a3acf3e0b69b27540922bb71770d9b019f1217':
  Print bluetooth state as a string

8 years agoMerge "Print bluetooth state as a string"
Ajay Panicker [Mon, 14 Mar 2016 20:47:49 +0000 (20:47 +0000)]
Merge "Print bluetooth state as a string"

8 years agoPrint bluetooth state as a string
Ajay Panicker [Mon, 14 Mar 2016 19:56:20 +0000 (12:56 -0700)]
Print bluetooth state as a string

Bug: 27294154
Change-Id: I992f720d94be1f0762424ebad36ec1b6af58600b

8 years agoHFP is exposed via Telecom ConnectionService.
Sanket Agarwal [Wed, 9 Mar 2016 23:29:38 +0000 (15:29 -0800)]
HFP is exposed via Telecom ConnectionService.

Telecom provides a ConnectionService mechanism where in order to make
calls you only need to provide the right phone account (which can be
queried using a predefined scheme).

This change adds a new middleware called ConnectionService which
provides a translation medium from Bluetooth <-> Telecom. Anyone who
wishes to use HFP HF role can then simply use TelecomManager (and
TelecomManager's InCallService) interfaces.

Bug: b/26757899

Change-Id: I66e47b6ff6330cfd9040a4a6cf4edadac28d63de

8 years agoMerge "Add enabled time to dump output"
Ajay Panicker [Wed, 9 Mar 2016 19:32:18 +0000 (19:32 +0000)]
Merge "Add enabled time to dump output"
am: 2e06ef253e

* commit '2e06ef253e733305358dd9232a13a93311ed9bf5':
  Add enabled time to dump output

8 years agoAdd enabled time to dump output
Ajay Panicker [Wed, 9 Mar 2016 18:57:32 +0000 (18:57 +0000)]
Add enabled time to dump output
am: b03b1ce32f

* commit 'b03b1ce32fe4f39139d9f62b002cf329a0cd72aa':
  Add enabled time to dump output

8 years agoAdd enabled time to dump output
Ajay Panicker [Wed, 9 Mar 2016 01:38:25 +0000 (17:38 -0800)]
Add enabled time to dump output

Ex:
Bluetooth Status
  enabled: true
  state: 12
  address: F8:CF:C5:CE:F5:69
  name: AOSP on Shamu
  time since enabled: 00:00:32.999

Bug: 27294154
Change-Id: Ie65964411e2095434a082f3d988133190c1f2f59

8 years agoMerge "Add enabled time to dump output"
Ajay Panicker [Wed, 9 Mar 2016 18:41:33 +0000 (18:41 +0000)]
Merge "Add enabled time to dump output"

8 years agoAdd enabled time to dump output
Ajay Panicker [Wed, 9 Mar 2016 01:38:25 +0000 (17:38 -0800)]
Add enabled time to dump output

Ex:
Bluetooth Status
  enabled: true
  state: 12
  address: F8:CF:C5:CE:F5:69
  name: AOSP on Shamu
  time since enabled: 00:00:32.999

Bug: 27294154
Change-Id: Ie65964411e2095434a082f3d988133190c1f2f59

8 years agoMove ScanStats to its own file
Ajay Panicker [Wed, 9 Mar 2016 00:55:59 +0000 (00:55 +0000)]
Move ScanStats to its own file
am: 7a068c2a08

* commit '7a068c2a0861e12a3916cec313cf105395871999':
  Move ScanStats to its own file

8 years agoMerge "Move ScanStats to its own file"
Ajay Panicker [Wed, 9 Mar 2016 00:47:37 +0000 (00:47 +0000)]
Merge "Move ScanStats to its own file"
am: 8a980761db  -s ours

* commit '8a980761dbe74c26548790557ed2f427ccb68c24':
  Move ScanStats to its own file

8 years agoMove ScanStats to its own file
Ajay Panicker [Wed, 2 Mar 2016 03:59:51 +0000 (19:59 -0800)]
Move ScanStats to its own file

ScanStats was growing too large and had many components so
it was moved into its own file.

Bug: 27294154
Change-Id: Ic20c9e74d5d8b074f7e966625fb1bffab6c94f2d

8 years agoAutoConnect A2DP and HFP for Car Kitt roles.
Sanket Agarwal [Wed, 9 Mar 2016 00:39:03 +0000 (00:39 +0000)]
AutoConnect A2DP and HFP for Car Kitt roles.
am: f848f42a0e

* commit 'f848f42a0ec33519a8143f01a1acfe835e2cd1bc':
  AutoConnect A2DP and HFP for Car Kitt roles.

8 years agoMerge "Move ScanStats to its own file"
Ajay Panicker [Wed, 9 Mar 2016 00:36:15 +0000 (00:36 +0000)]
Merge "Move ScanStats to its own file"

8 years agoMove ScanStats to its own file
Ajay Panicker [Wed, 2 Mar 2016 03:59:51 +0000 (19:59 -0800)]
Move ScanStats to its own file

ScanStats was growing too large and had many components so
it was moved into its own file.

Bug: 27294154
Change-Id: Ic20c9e74d5d8b074f7e966625fb1bffab6c94f2d

8 years agoAutoConnect A2DP and HFP for Car Kitt roles.
Sanket Agarwal [Wed, 9 Mar 2016 00:02:21 +0000 (16:02 -0800)]
AutoConnect A2DP and HFP for Car Kitt roles.

1. Current auto connect sequence is not enabled for HeadsetClient.
2. On profile init consider A2DP and HFP in Car Kitt roles as
privellaged profiles.

Bug: b/27551485

Change-Id: I477b34ad1598d0a3ab9563ccd5b3770a4a1e2a57

8 years agoAudio Focus for A2DP.
Sanket Agarwal [Tue, 8 Mar 2016 19:16:25 +0000 (19:16 +0000)]
Audio Focus for A2DP.
am: 94a38610a1

* commit '94a38610a17e019818719cfecde1b3e80601a2bd':
  Audio Focus for A2DP.

8 years agoAudio Focus for A2DP.
Sanket Agarwal [Fri, 12 Feb 2016 22:48:51 +0000 (14:48 -0800)]
Audio Focus for A2DP.

When AVRCP is available we provide the following focus management on
SINK role:
a) Both AVRCP CT and AVRCP TG can notify the A2DP SNK about play status
change. A2DP SNK will only play when either CT or TG says play.
b) If AVRCP does not exist or neither of CT or TG have explicitly said
play (pass through or notification) then we simply throw away the data.

TODO:
Implement additional policy where we take the data from the A2DP SRC
irrespective of whether AVRCP exists or not. This should be implemented
as a separate streaming state machine and we should be able to flip the
state machine at run time (via settings app).

Bug: b/26928143

Change-Id: Ie5fab15ba4cdd5738c59fa646ca0824770489ec5

8 years agoMerge "Prevent javacrash when TELEPHONY_SERVICE is not found" am: 8367ebbea6
Franck Lenormand [Mon, 7 Mar 2016 21:03:32 +0000 (21:03 +0000)]
Merge "Prevent javacrash when TELEPHONY_SERVICE is not found" am: 8367ebbea6
am: 5dc01a914a

* commit '5dc01a914a741406be9a1204c75411db481fd813':
  Prevent javacrash when TELEPHONY_SERVICE is not found