Here is more detail:

my app uses a small subset of Android's MediaPlaybackService (which
underlies its Music app)

The problem is that the AIDL for some of the few functions I use have
changed from Android 1.x to 2.x

Therefore no single com.android.music.IMediaPlaybackService.aidl file
will be compatible with the service on both 1.x and 2.x platforms.
And, the security system for mapping interfaces objects if I rename
the 2.x compatible AIDL to (say)
com.android.music.IMediaPlaybackService2.aidl.  I presume it would
also object if I moved this interface to another package (I should try
that before moving on the path I think I am being forced toward).

Since I cannot alter either version of the service, I feel I am stuck
with a situation where a single interface file in my project must be
two different versions, which it cannot.

The workaround I have been thinking of is that I will keep my app so
it can interface to Android 1.x's MediaPlayerService via the existing
(working) interface, and have 2.x users download an additional package
embodying a service of my own creation which serves as a front-end to
Android 2.x's MediaPlayerService.  As this service will have a
different name and I can write its interface entirely, my app will
have its liberty to use it as a proxy for the underlying Android code.

The other approach is simply to have a 2.x version of my app that
replaces the 1.x AIDL with the 2.x AIDL.  To me, that seems uglier.

tone

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to