1ff5a0a6b42eff4c5728f0327440c127f8d3bb1c |
|
11-Mar-2016 |
Hemant Gupta <hemantg@codeaurora.org> |
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
/packages/apps/Bluetooth/src/com/android/bluetooth/map/BluetoothMapAppObserver.java
|
5cd7c89d0e17a9176337a36a27792bab3dd76fe9 |
|
10-Mar-2016 |
Hemant Gupta <hemantg@codeaurora.org> |
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
/packages/apps/Bluetooth/src/com/android/bluetooth/map/BluetoothMapAppObserver.java
|
5a60e47497f21f64e6d79420dc4c56c1907df22a |
|
17-Mar-2015 |
kschulz <k.schulz@samsung.com> |
Update to Bluetooth MAP 1.2 (server) - Change folder name lookup to a map Replaced the arrays used to convert mailbox ID/msg type to a folder name with a static map. This is to avoid null pointer exception for unknown values, and to catch any changes in the ID/type values at compile time in stead of runtime. Bug-id:16874441 - Added Instance Information support and Extended Event support. Still missing integration wiht SDP MAP feature bit mask support - Adding Abstract implementation to support conversations - added IM account handling, IM type definition, Application paramenters. - addedgetConversactionList functionality - added method to strip encoding in headers - Fixed messagelist showing both email address and name in the name fields. - Fixed Index out of bounds exception was hit when the subject contained invalid chars. - Added functionality to support the getConversationListReq Works for SMS/MMS, Email and IM For Email/IM it depends on the convoContact table in the contract. For SMS/MMS it uses the contact number+ name if available in contact database. - Added new parameters to msgListing also in contract class - Added Test framework for "near system level" tests Currently only includes an entry point for single device tests. - Added support for setOwnerStatus - Added support for vcard type X-BT-UID - Introduced type SignedLongLong to handle 128 bit values which needs to be handled as hex-strings. - Added convocontact notification events for IM - Added support for IM getMessage - Added setEventFilter function. - Added event filtering before enquing an event to be send. - Added selective observers, depending on the active filter. - Fixed timestamp to be from seconds to seconds (not from milisec) - Fixed version number in bMessage if remote featurebit is set for v 1.1 - Added content encoding to QP for text that are not USACII - Corrected the addresses in to/from for IM messages - Added btuid and btuci to vcard - Fixed (some) longlines - Added extendedData support (empty when sending, just logging when receiving) - Fixed Email folderName compairison changed to ignore case - Fixed problem with names containing "null" - BluetoothMapbMessageMms changed to BluetoothMapbMessageMime - Fixrf addOriginator in getMessage request - Add missing subjects in events for SMS - Don't send ReadStatusChanged when pushing a message - Temp way of adding names/uci to IM msg listing - Added messageHandle filtering in msgListing - Convolisting parameter mask support - Added support for using handle when filtering in root folder during msgLising - Added subject to event in sms - Fixed so attribute_mime_type is only sent when parameter is requested - Fixed feature bit check to messageListing version - Fixed leaking cursors - Added support for database identifier - Added folder and conversation version counters Change-Id: I4d2954b795aa7ed2a41dd034384da30f240b518f
/packages/apps/Bluetooth/src/com/android/bluetooth/map/BluetoothMapAppObserver.java
|