@Override public void addOnErrorListener(OnErrorListener listener) { if (mOnError.get(listener) != null) { // listener is already registered return; } try { synchronized (mOnError) { OnErrorListenerTransport transport = new OnErrorListenerTransport(listener); mService.addOnErrorListener(transport); mOnError.put(listener, transport); } } catch (RemoteException ex) { Log.e(TAG, "addOnErrorListener: RemoteException", ex); } }