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

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

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

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

Итак, мои вопросы – два:

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

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

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