public void onServiceConnected(ComponentName name, IBinder service)
{
// Get Connected the the IDL
mRemoteInterface = IRemoteService.Stub.asInterface(service);
if (null != mRemoteInterface)
{
// Register Callbacks
try {
mRemoteInterface.registerCallback(mServiceCallback);
} catch (RemoteException e1) {
e1.printStackTrace();
}
}
}
// Disconnecting from the service
if (null != mMediaRemoteInterface) {
// unregister callbacks
try {
mMediaRemoteInterface.unregisterCallback(mMediaServiceCallback);
} catch (RemoteException e) {
e.printStackTrace();
}
mMediaRemoteInterface = null;
}
// unbind the service!
try {
this.unbindService(this);
} catch( IllegalArgumentException e ){
e.printStackTrace();
}
On Mar 7, 8:51 pm, Moto <[email protected]> wrote:
> Hi Mark,
> Thanks for the reply... Ok, I'm calming down... :P
>
> I was able to determine via DDMS that after a few screen rotations the
> allocated size would increase until my application would crash with an
> out of memory exception. Also the number of Objects are increasing
> after every screen rotation.
>
> My activity connects to a Service, and after I get connected I
> register my callback function IRemoteServiceCallback. If I exclude
> this call from my application I resolve the memory leak. Note that I
> do unregister the service callback funtion.
>
> Thanks!
>
> On Mar 7, 7:37 pm, Mark Murphy <[email protected]> wrote:
>
> > Moto wrote:
> > > I'm trying to figure out in every possible way how to target this leak
> > > that specifically happens when I registerCallback to my service aidl
> > > callback class.
> > > I even tried commenting out the callback register on the callback and
> > > I still get the leak!
> > > /**
> > > * The IRemoteInterface is defined through IDL
> > > */
> > > private final IRemoteService.Stub mBinder = new
> > > IRemoteService.Stub() {
> > > public void registerCallback(IRemoteServiceCallback cb) {
> > > if (cb != null) mCallbacks.register(cb);
> > > }
> > > public void unregisterCallback(IRemoteServiceCallback cb) {
> > > if (cb != null) mCallbacks.unregister(cb);
> > > }
> > > };
>
> > > MY HEAD IS ABOUT TO EXPLODE! I been trying so many things it's just
> > > not working... Could it be an actual bug in Android?
>
> > > Any help is apreciated!
>
> > First, calm down.
>
> > Second, you think you are leaking...what? Activities? Services? Views?
> > Bitmaps? Strings? Byte arrays? Something else? I can see that you are
> > very concerned about these leaks, but until you tell us what it is that
> > you think is leaking (beyond "memory"), we can't help you much.
>
> > Third, it would help if you could indicate how you are determining that
> > you are leaking memory. For example, are you using DDMS's allocation
> > tracker for this? Debug.dumpHprofData() and Eclipse's MAT? Something else?
>
> > --
> > Mark Murphy (a Commons
> > Guy)http://commonsware.com|http://twitter.com/commonsguy
>
> > Android Training in US: 14-18 June 2010:http://bignerdranch.com
>
>
--
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