Ошибка 110 при запуске make

Я получаю следующую ошибку:

frameworks / base / core / java / android / os / mypackage / MyServiceListenerClass.java: 283: ошибка 110: параметр недоступного типа android.os.storage.VolumeInfo в android.os.mypackage.MyServiceListenerClass.myMethod()

Я создал новый пакет с некоторыми классами, и эти классы используют VolumeInfo от storage пакет.

Я не смог найти документацию по этой ошибке. Что я сделал не так?

ОБНОВИТЬ:

  • Узнал что Error 110 = UNAVAILABLE_SYMBOL,

  • Нашел этот раздел в doclava/Stubs.java:

    for (ParameterInfo p :  m.parameters()) {
        TypeInfo t = p.type();
        if (!t.isPrimitive()) {
          hiddenClass = findHiddenClasses(t);
          if (null != hiddenClass) {
            if (hiddenClass.qualifiedName() == t.asClassInfo().qualifiedName()) {
              // Parameter type is hidden
              Errors.error(Errors.UNAVAILABLE_SYMBOL, m.position(),
                  "Parameter of unavailable type " + t.fullName() + " in " + cl.qualifiedName()
                  + "." + m.name() + "()");
            } else {
              // Parameter type contains a generic parameter
              Errors.error(Errors.HIDDEN_TYPE_PARAMETER, m.position(),
                  "Parameter uses type parameter of unavailable type " + t.fullName() + " in "
                  + cl.qualifiedName() + "." + m.name() + "()");
            }
          }
        }
    }
    

1 ответ

Решение

Так что причиной этой ошибки была @hide атрибут в нижней части VolumInfoДокументация часть:

/**
 * Information about a storage volume that may be mounted. A volume may be a
 * partition on a physical {@link DiskInfo}, an emulated volume above some other
 * storage medium, or a standalone container like an ASEC or OBB.
 * <p>
 * Volumes may be mounted with various flags:
 * <ul>
 * <li>{@link #MOUNT_FLAG_PRIMARY} means the volume provides primary external
 * storage, historically found at {@code /sdcard}.
 * <li>{@link #MOUNT_FLAG_VISIBLE} means the volume is visible to third-party
 * apps for direct filesystem access. The system should send out relevant
 * storage broadcasts and index any media on visible volumes. Visible volumes
 * are considered a more stable part of the device, which is why we take the
 * time to index them. In particular, transient volumes like USB OTG devices
 * <em>should not</em> be marked as visible; their contents should be surfaced
 * to apps through the Storage Access Framework.
 * </ul>
 *
 * @hide
 */

Удаление этого решает проблему.

Другие вопросы по тегам