HI Al,

I have tried putting the logs & my observations are as follows:

Case 1: when the local service not started up on boot up complete.
>From UI Call bindService() to start the service. Since the service is
not yet started onCreate() is called followed by onBind() of the local
service. From onServiceConnected() UI get the instance of service,
register a callback handler(so that service can inform UI once the
desired operation is complete) & invoke the desire operation. Once the
operation is completed the UI calls unbindService(). In this case the
service is killed on unbindService(). Also as mentioned by me earlier
in this case the binding / unbinding works multiple times & each time
ui is able to communicate with service.

Case 2: LocalService is started on boot up complete.
On Bootup complete event the service is started by calling startService
(). This invokes onCreate() followed by onStart() of the local
service. The service is started at this point. On user action UI now
invokes bindservice() to bind the service with UI.From
onServiceConnected() UI get the instance of service, register a
callback handler(so that service can inform UI once the desired
operation is complete) & invoke the desire operation. Once the
operation is completed the UI calls unbindService(). In this case the
service is not killed since stopself() or stopservice() is not called.
>From this point on I cannot bind again with the service, i.e.
bindService() returns true...but onBind() is never called.



On Jan 14, 2:53 am, Al <alcapw...@googlemail.com> wrote:
> Binding and unbinding many times works fine for also. Try adding log
> messages to your service's onCreate, onStart, onBind methods to see if
> they are being called and investigate from there.
>
>
>
> > On Tue, Jan 13, 2009 at 5:00 AM,Abraham
> > <abraham_thamarapal...@yahoo.co.in>wrote:
>
> > > HI All,
>
> > > I'm facing an issue with my application & need your expert opinion in
> > > resolving the issue.
>
> > > My app has a local service which is started by calling startService()
> > > when the phone boot up is complete.  My app also has a UI component
> > > which the user can use for making use of the service. Following the
> > > Local service binding example in ApiDemos my app is calling bindService
> > > () api to bind with the local service & make use of the local service
> > > instance obtained through the IBinder in onServiceConnected() to
> > > perform operations provided by the service. Once the operation is
> > > completed my app calls unbindService() to disconnect the UI from the
> > > service. From this point on my app cannot communicate with the local
> > > service by calling bindService() or startService().
>
> > > Has anyone faced similar issues. If yes, what is the work around. Am I
> > > doing something wrong.
>
> > > Another observation is that if I donot call unbindService() I'm able
> > > to make use of the operations provided by the service, although it
> > > leads to memory leaks ( as displayed in the logs) .
>
> > > Looking forward your response. Thanx in advance.- Hide quoted text -
>
> - Show quoted text -
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers-unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to