Почему.aidl нельзя поместить в проект библиотеки?

Я наткнулся на комментарий, в котором говорится, что проект библиотеки:

  1. не может содержать файлы.aidl,
  2. не может зависеть от другого библиотечного проекта,
  3. не может держать активы

Ну, этот комментарий был сделан около полутора лет назад, и я могу с полной уверенностью сказать, что пункт № 2 больше не соответствует действительности ( сентябрь 2010 года?), Потому что у меня есть отлично работающий проект, сделанный из библиотечного проекта, который зависит от другого библиотечного проекта.

Итак, у меня два вопроса:

  1. Правда ли, что проект библиотеки не может содержать .aidl файлы?
  2. Если ответ на вопрос № 1 - да, то какова причина этого?

Кстати, в качестве эксперимента я пытался разместить IMarketBillingService.aidl (из примера биллинга в приложении) в библиотечном проекте (без всего, что еще его использует), и проект собирается и запускается, как и раньше. Итак, если для библиотечного проекта все еще невозможно содержать .aidl это должно быть что-то более глубокое...

1 ответ

Решение

Ответ - нет'. Вы можете использовать файл AIDL в проектах библиотеки просто отлично. Я использую такую ​​установку в трех разных проектах. Не помню точно, когда, но они исправили это некоторое время назад (возможно, когда добавили поддержку библиотек-библиотек в ADT). Причина, по которой он не работал раньше, заключается в том, что сборщик ADT не распознал файл AIDL и не сгенерировал необходимые заглушки Java.

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