public void call(ServiceCallback callback) { if (notify != null) { callback.run(notify); } else { callbacks.offer(callback); } }
@Override public void onServiceConnected(ComponentName name, IBinder service) { notify = NotificationServiceInterface.Stub.asInterface(service); while (callbacks.size() > 0) { ServiceCallback callback = callbacks.remove(); callback.run(notify); } }