roqerxz / media-button-router

Automatically exported from code.google.com/p/media-button-router
Apache License 2.0
0 stars 0 forks source link

App Compatibility - Audible #16

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?

1. Install Media Button Router
2. Install Audible (Audio Book Player App)
3. Open Media Button Router and scroll to "Apps To show In The Selector"

What is the expected output? What do you see instead?

I hope to see Audible listed as an app available for control via Media Button 
Router.  Instead, I only see Pandora, iHeartRadio, and Spotify.

What version of the product are you using? On what version of android? On what 
device?

Media Button Router: 1.3.1
Audible: 1.3.6
Android: 4.0.2

Please provide any additional information below.

This is the response I got from Audible when I asked them about the issue.  
What is the technical difference between Audible and the apps that do work with 
Media Button Router?  Is it possible to modify MBR to accommodate Audible?  If 
Audible were to change something, what would it need to be?

We are aware that our App (and others) are having compatibility issues with 
Android 4.0 as related to Bluetooth functionality.  In general, all apps other 
than the native Android "Music" app are not receiving Play/Pause commands via 
Bluetooth in Android 4.0.

This is not an issue with the 3rd party app Media Button Router, but will 
affect Bluetooth headsets as well.

I have researched this issue in the past, because I myself have a Galaxy Nexus. 
 I will share you with you the link to the official Google Code thread:

http://code.google.com/p/android/issues/detail?id=23172

Audible, Google, as well as developers of other apps are all working toward a 
fix at this time.  I hope that this link is helpful in answering some of your 
questions and concerns, and perhaps you can follow (or "Star") it for progress 
and updates.

Original issue reported on code.google.com by andrew.m...@gmail.com on 10 Jan 2012 at 3:31

GoogleCodeExporter commented 9 years ago
I commented on the android issue with play/pause not working with apps in ICS. 
The keycodes that get sent for play/pause changed in ICS for some reason. 

This shouldn't be related to the issue of Audible not showing up in media 
button router. That's probably something else. I haven't had a chance to look 
into it yet, but my first guess is that Audible doesn't list its media button 
broadcast receiver in its AndroidManifest.xml.

Original comment by harleens...@gmail.com on 10 Jan 2012 at 4:12

GoogleCodeExporter commented 9 years ago
I raised this as an issue on Audible's beta users forum, and Adam Vollmer (on 
the Audible dev team) offered this:

"I'd love for the Media Button Router team to try to enable a workaround for 
us/our users. It should be a simple matter of them registering for all media 
button events and properly dispatching them explicitly to us. I'd be happy to 
answer questions from them to help them get this working in the interim."

Sounds like they'd be willing to make this a reality if you guys have the time. 
 Adam can be reached via http://groups.google.com/group/audible-for-android-beta

Original comment by steven.g...@gmail.com on 20 Feb 2012 at 6:35

GoogleCodeExporter commented 9 years ago
Just saw MBR dev's prior comment above mine - they do admit that these are the 
current issues:

- We register our broadcast receiver programmatically, rather than via the 
manifest. ICS doesn't handle this correctly at present. 
- We aren't calling registerMediaButtonEventReceiver 

For whatever reason, there are other issues on their radar taking precedence, 
which obviously is not your problem.  Me - I'm just looking for a way to get 
AVRCP working with their app, such as it is, until they fix it.  

Original comment by steven.g...@gmail.com on 20 Feb 2012 at 6:38

GoogleCodeExporter commented 9 years ago
Hi Steven,

Thanks for confirming that Audible's app is indeed culprit. Unfortunately, all 
the changes that need to be made are on their end. There is nothing else I can 
do. Several other apps have no problem working with mbr because they follow the 
standard procedures for registering for listening to media button intents. 

Here's the API they need to use, and more importantly the information on 
needing to declare your receiver in the manifest.
http://developer.android.com/reference/android/media/AudioManager.html :
public void registerMediaButtonEventReceiver (ComponentName eventReceiver)

Since: API Level 8
Register a component to be the sole receiver of MEDIA_BUTTON intents.
Parameters

eventReceiver   identifier of a BroadcastReceiver that will receive the media 
button intent. This broadcast receiver must be declared in the application 
manifest. The package of the component must match that of the context you're 
registering from.

Original comment by harleens...@gmail.com on 4 Mar 2012 at 6:24