code: @SuppressWarnings("WeakerAccess")
      public void removeWeakCallback(@NonNull Callback callback) {
          for (int i = mCallbacks.size() - 1; i >= 0; i--) {
              Callback currentCallback = mCallbacks.get(i).get();
              if (currentCallback == null || currentCallback == callback) {
                  // found callback, or empty weak ref
                  mCallbacks.remove(i);
              }
          }
      }
docs: Removes a previously added callback.
  
  @param callback Callback, previously added.
  @see #addWeakCallback(List, Callback)