@Override public void onPipelineDeactivated() { if(!mUserPipelineActive) { mWakeLocker.releaseWakeLock(); removeFromForeground(); synchronized(this) { if(mVehicleInterface == null || !mVehicleInterface.isConnected()) { synchronized(mViConnectionListeners) { int i = mViConnectionListeners.beginBroadcast(); while(i > 0) { i--; try { mViConnectionListeners.getBroadcastItem(i).onDisconnected(); } catch(RemoteException e) { Log.w(TAG, "Couldn't notify VI connection " + "listener -- did it crash?", e); } } mViConnectionListeners.finishBroadcast(); } } } } } }