On page 267 of Android Application Development, the AIDL-generated code for APIDemos example is formatted for readbility and dissected, and shows how calls within a process get short-circuited and do not actually use IPC. Amazon doesn't allow posting links into "Look Inside" previews of books, but searching for "aidl" and "proxy" will get you there.
On Jun 25, 4:08 pm, Mark Murphy <[email protected]> wrote: > On Fri, Jun 25, 2010 at 3:50 PM, Dianne Hackborn <[email protected]> wrote: > > AIDL/Binder by design don't have a performance impact when making a call in > > the same process. This turns into a direct call on to the target's > > interface implementation. > > Ah! That's good to know. > > > The big thing this introduces is a whole lot more effort and complexity for > > the developer, as they now need to deal with AIDL interfaces. > > At least that's hidden for ResultReceiver, which has the AIDL stuff baked in. > > > If the purpose of this code (and I haven't looked at it to know) is to send > > a command to the service and get told later when it is done, then this is a > > reasonable approach. There are some potential edge cases where the result > > won't be delivered though (if the process is in the background and gets > > killed and its service restarted), so I would recommend giving it a > > PendingIntent to deliver a result to the activity rather than an interface > > to a live object. You can make this with Activity.createPendingResult(). > > :: scribbles furiously in notebook :: > > > On the other hand, if the purpose of this is to tell the service about the > > activity running for it to know about and send information back during that > > time, it is bad because this is not the semantics of startService(). You > > want to use bindService() for that. > > Yeah, I haven't fully investigated the app, so I don't know precisely > what your team's intentions were when they wrote it. > > But, this info is fantastic -- many thanks! > > -- > Mark Murphy (a Commons > Guy)http://commonsware.com|http://github.com/commonsguyhttp://commonsware.com/blog|http://twitter.com/commonsguy > > _The Busy Coder's Guide to *Advanced* Android Development_ Version 1.6 > Available! -- 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

