History log of /packages/apps/Bluetooth/src/com/android/bluetooth/avrcp/BrowsedMediaPlayer.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
978986041010d3d2d72e1057743415e76c6f2ce9 11-May-2017 Hemant Gupta <hemantg@codeaurora.org> AVRCP: Fix GetItemAttributesCommand

Usecase:
1) Connect DUT with remote device supporting AVRCP 1.4
2) Connect browsing channel (if not already connected).
3) Send request to retrieve player list and select browsed player.
3) Send get item attribute commands to retrieve attributes of particular uid.

Expected Result:
Item attributes of particular UID are retrieved successfully.

Observation:
Get Item Attribute command does not return any response.

Root cause:
Media id passed as argument to MediaBrowse.subscribe is of children instead of
parent as required by the API

Fix:
Refactor to encapsulate requested ID in the subscribe callback, call the
MediaBrowser.subscribe with the correct id.

Test: connect to carkit and check if DUT responds correctly to GetItemAttribute
Bug: 37265436
Change-Id: Ifd7e17c600c0142cd29514eedf4ff8150f632570
(cherry picked from commit 3cd52581b21ef8c35382650170c9046119213f28)
/packages/apps/Bluetooth/src/com/android/bluetooth/avrcp/BrowsedMediaPlayer.java
0f9c79e8afa3e575dfd8c80c2c58b9321e18898d 26-Apr-2017 Marie Janssen <jamuraa@google.com> AVRCP: Gracefully handle missing item attributes

The source of our metadata sometimes doesn't even give us basic title
information, which causes a NullPointerException when we try to fill the
Displayable Name.

Fill it with "<unknown>" when we don't know the data.

Add more useful debugging for GetFolderItems and GetItemAttributes.

Test: Tested with Audi and Porche car kit
Bug: 37657532
Bug: 37718715
Change-Id: I183f2b9c5714ebacabc8093de1c2bc166e323fae
(cherry picked from commit 89728a4d50001ac76d05efa1c916711ef9f9c2b4)
/packages/apps/Bluetooth/src/com/android/bluetooth/avrcp/BrowsedMediaPlayer.java
ce0f15c8598a1e570faf80bbc60e0568d2d20d45 15-Feb-2017 Marie Janssen <jamuraa@google.com> AVRCP: Fix getFolderItems with all items request

start item and end item are uint32_t
0xFFFFFFFF is commonly used as an indicator for "all items" end value.

Using a jint (int32_t) doesn't work, use jlong instead.

Test: browse with audi kit
Bug: 35385700
Bug: 36645066
Change-Id: I364f70a8b985796a6bcc83148a4ecc368a0c0493
(cherry picked from commit aabff2d74224e1d122a2ae767330a69b9324779e)
/packages/apps/Bluetooth/src/com/android/bluetooth/avrcp/BrowsedMediaPlayer.java
e03b71ad9c4c89ab36f836145d90120c6457479e 14-Feb-2017 Ajay Panicker <apanicke@google.com> Prevent getting Session Token if media browser isn't connected

Bug: 35348574
Test: Sanity test browsing with VW Carkit
Change-Id: I795a19f4bd0a95d36f64bc767fdeda108c20f5ed
/packages/apps/Bluetooth/src/com/android/bluetooth/avrcp/BrowsedMediaPlayer.java
3843256f294cfd3e9b1d883e71ed7306738b6ca1 10-Dec-2016 Marie Janssen <jamuraa@google.com> AVRCP: Test MediaBrowsers before trying to use

MediaBrowserService can reject the connection from a MediaBrowser.

Test packages beforehand so we don't advertise browsing for a player we
can't browse to.

Refactor and cleanup some code around building media player lists and
remove some dead code.

Bug: 33390650
Bug: 32382082
Test: use carkit to browse to different players
Change-Id: I5a4c18ab77a24f3cf2aa34d1c15e3213edfed61d
/packages/apps/Bluetooth/src/com/android/bluetooth/avrcp/BrowsedMediaPlayer.java
417d1b696e6bcf1e22478b93e79aa5936537483a 14-Oct-2016 Ajay Panicker <apanicke@google.com> Define cover art attribute id

Test: Tested manually
Bug: 32081388
Change-Id: Ib9df511a36d19f1bd5197836ad34b19edba73748
/packages/apps/Bluetooth/src/com/android/bluetooth/avrcp/BrowsedMediaPlayer.java
d996f17ea97b2c592338bcfbc93056d0224da1cd 21-Oct-2016 Ajay Panicker <apanicke@google.com> Add AVRCP unit tests and switch to using mockable interfaces

Add a mockable interface for MediaController in order to add unit
tests for AddressedMediaPlayer.

Bug: 32416674
Test: Tested manually
Change-Id: I081c37915fc15e58f3de37c3a16e03747503860c
/packages/apps/Bluetooth/src/com/android/bluetooth/avrcp/BrowsedMediaPlayer.java
33fa358d46e1ffa04b065de75379ae90d9821f75 11-Oct-2016 Ajay Panicker <apanicke@google.com> Fix error where root folder depth was set as 1 instead of 0

Test: Tested by hand
Bug: 32082139
Change-Id: Id46c3dab1e21d166691620cb762d64893ce5d41d
/packages/apps/Bluetooth/src/com/android/bluetooth/avrcp/BrowsedMediaPlayer.java
a2d70c884a330dcdac82d34314ddbb815bd84543 05-Oct-2016 Ajay Panicker <apanicke@google.com> Offset browsing media entry UID by one

Offset AVRCP UID by one for browsing since UID 0 is reserved for
getElementAttributes.

Bug: 31962824
Change-Id: I7efcd0546ebb0d02b4b1bfb05038a86d9fa0835f
/packages/apps/Bluetooth/src/com/android/bluetooth/avrcp/BrowsedMediaPlayer.java
e90c830b72f97189935e99e9e4f5a0c4f216ba72 22-Jun-2016 Avish Shah <avish.shah@broadcom.com> AVRCP 1.6: media browsing support on Target(3/3)

Description:-
This patch provides Media browsing support for AVRCP using
new Media Browsing APIs provided from Android 5.0

Features:-
1) setAddressedPlayer
- Change the control to the specified player
2) setBrowsedPlayer
- Change the player with which fileSystem is being browsed
Browsing commands:
3) getFolderItems scope=MediaPlayers/VFS/NowPlaying
4) changePath
5) getItemAttributes
6) playItem
7) getTotalNumberOfItems

Handling notifications:-
1) ADDRESSED_PLAYER_CHANGED
2) AVAILABLE_PLAYERS_CHANGED
3) NOW_PLAYING_CONTENT_CHANGED

Added support for dual RC

New files added:-
AvrcpHelperClasses.java
- Helper classes used for callback/response of browsing commands.
AvrcpConstants.java
- Group all the constants used in Avrcp.
AddressedMediaPlayer.java
- Interface to communicate with media controller for NowPlayingItems.
BrowseMediaPlayer.java
- Interface to communicate with MediaPlayer for browsing FileSystem.
AvrcpMediaRspInterface.java
- Interface to communicate with the native layer.

Verification:-
AVRCP 1.5/1.6 functionality has been verified with
google MediaBrowserService sample app.

Bug: 19361366
Merged-In: I0ab7f0c7d87c06fe4f454151d20494c56aceae12
Change-Id: I40b9e7aae81d994a709559844928b0749c603ea8
/packages/apps/Bluetooth/src/com/android/bluetooth/avrcp/BrowsedMediaPlayer.java