Loading core/java/com/android/internal/infra/AbstractRemoteService.java +10 −10 Original line number Diff line number Diff line Loading @@ -88,7 +88,7 @@ public abstract class AbstractRemoteService<S extends AbstractRemoteService<S, I private final int mBindingFlags; protected I mService; private boolean mBinding; private boolean mConnecting; private boolean mDestroyed; private boolean mServiceDied; private boolean mCompleted; Loading Loading @@ -228,7 +228,7 @@ public abstract class AbstractRemoteService<S extends AbstractRemoteService<S, I if (mService != null) { mService.asBinder().unlinkToDeath(this, 0); } mBinding = false; mConnecting = true; mService = null; mServiceDied = true; cancelScheduledUnbind(); Loading Loading @@ -435,10 +435,10 @@ public abstract class AbstractRemoteService<S extends AbstractRemoteService<S, I } private void handleEnsureBound() { if (handleIsBound() || mBinding) return; if (handleIsBound() || mConnecting) return; if (mVerbose) Slog.v(mTag, "ensureBound()"); mBinding = true; mConnecting = true; final int flags = Context.BIND_AUTO_CREATE | Context.BIND_FOREGROUND_SERVICE | Context.BIND_INCLUDE_CAPABILITIES | mBindingFlags; Loading @@ -448,7 +448,7 @@ public abstract class AbstractRemoteService<S extends AbstractRemoteService<S, I if (!willBind) { Slog.w(mTag, "could not bind to " + mIntent + " using flags " + flags); mBinding = false; mConnecting = false; if (!mServiceDied) { handleBinderDied(); Loading @@ -457,10 +457,10 @@ public abstract class AbstractRemoteService<S extends AbstractRemoteService<S, I } private void handleEnsureUnbound() { if (!handleIsBound() && !mBinding) return; if (!handleIsBound() && !mConnecting) return; if (mVerbose) Slog.v(mTag, "ensureUnbound()"); mBinding = false; mConnecting = false; if (handleIsBound()) { handleOnConnectedStateChangedInternal(false); if (mService != null) { Loading @@ -476,12 +476,12 @@ public abstract class AbstractRemoteService<S extends AbstractRemoteService<S, I @Override public void onServiceConnected(ComponentName name, IBinder service) { if (mVerbose) Slog.v(mTag, "onServiceConnected()"); if (mDestroyed || !mBinding) { if (mDestroyed || !mConnecting) { // This is abnormal. Unbinding the connection has been requested already. Slog.wtf(mTag, "onServiceConnected() was dispatched after unbindService."); return; } mBinding = false; mConnecting = false; try { service.linkToDeath(AbstractRemoteService.this, 0); } catch (RemoteException re) { Loading @@ -496,7 +496,7 @@ public abstract class AbstractRemoteService<S extends AbstractRemoteService<S, I @Override public void onServiceDisconnected(ComponentName name) { if (mVerbose) Slog.v(mTag, "onServiceDisconnected()"); mBinding = true; mConnecting = true; mService = null; } Loading Loading
core/java/com/android/internal/infra/AbstractRemoteService.java +10 −10 Original line number Diff line number Diff line Loading @@ -88,7 +88,7 @@ public abstract class AbstractRemoteService<S extends AbstractRemoteService<S, I private final int mBindingFlags; protected I mService; private boolean mBinding; private boolean mConnecting; private boolean mDestroyed; private boolean mServiceDied; private boolean mCompleted; Loading Loading @@ -228,7 +228,7 @@ public abstract class AbstractRemoteService<S extends AbstractRemoteService<S, I if (mService != null) { mService.asBinder().unlinkToDeath(this, 0); } mBinding = false; mConnecting = true; mService = null; mServiceDied = true; cancelScheduledUnbind(); Loading Loading @@ -435,10 +435,10 @@ public abstract class AbstractRemoteService<S extends AbstractRemoteService<S, I } private void handleEnsureBound() { if (handleIsBound() || mBinding) return; if (handleIsBound() || mConnecting) return; if (mVerbose) Slog.v(mTag, "ensureBound()"); mBinding = true; mConnecting = true; final int flags = Context.BIND_AUTO_CREATE | Context.BIND_FOREGROUND_SERVICE | Context.BIND_INCLUDE_CAPABILITIES | mBindingFlags; Loading @@ -448,7 +448,7 @@ public abstract class AbstractRemoteService<S extends AbstractRemoteService<S, I if (!willBind) { Slog.w(mTag, "could not bind to " + mIntent + " using flags " + flags); mBinding = false; mConnecting = false; if (!mServiceDied) { handleBinderDied(); Loading @@ -457,10 +457,10 @@ public abstract class AbstractRemoteService<S extends AbstractRemoteService<S, I } private void handleEnsureUnbound() { if (!handleIsBound() && !mBinding) return; if (!handleIsBound() && !mConnecting) return; if (mVerbose) Slog.v(mTag, "ensureUnbound()"); mBinding = false; mConnecting = false; if (handleIsBound()) { handleOnConnectedStateChangedInternal(false); if (mService != null) { Loading @@ -476,12 +476,12 @@ public abstract class AbstractRemoteService<S extends AbstractRemoteService<S, I @Override public void onServiceConnected(ComponentName name, IBinder service) { if (mVerbose) Slog.v(mTag, "onServiceConnected()"); if (mDestroyed || !mBinding) { if (mDestroyed || !mConnecting) { // This is abnormal. Unbinding the connection has been requested already. Slog.wtf(mTag, "onServiceConnected() was dispatched after unbindService."); return; } mBinding = false; mConnecting = false; try { service.linkToDeath(AbstractRemoteService.this, 0); } catch (RemoteException re) { Loading @@ -496,7 +496,7 @@ public abstract class AbstractRemoteService<S extends AbstractRemoteService<S, I @Override public void onServiceDisconnected(ComponentName name) { if (mVerbose) Slog.v(mTag, "onServiceDisconnected()"); mBinding = true; mConnecting = true; mService = null; } Loading