Почему.aidl нельзя поместить в проект библиотеки?
Я наткнулся на комментарий, в котором говорится, что проект библиотеки:
- не может содержать файлы.aidl,
- не может зависеть от другого библиотечного проекта,
- не может держать активы
Ну, этот комментарий был сделан около полутора лет назад, и я могу с полной уверенностью сказать, что пункт № 2 больше не соответствует действительности ( сентябрь 2010 года?), Потому что у меня есть отлично работающий проект, сделанный из библиотечного проекта, который зависит от другого библиотечного проекта.
Итак, у меня два вопроса:
- Правда ли, что проект библиотеки не может содержать
.aidl
файлы? - Если ответ на вопрос № 1 - да, то какова причина этого?
Кстати, в качестве эксперимента я пытался разместить IMarketBillingService.aidl
(из примера биллинга в приложении) в библиотечном проекте (без всего, что еще его использует), и проект собирается и запускается, как и раньше. Итак, если для библиотечного проекта все еще невозможно содержать .aidl
это должно быть что-то более глубокое...
1 ответ
Ответ - нет'. Вы можете использовать файл AIDL в проектах библиотеки просто отлично. Я использую такую установку в трех разных проектах. Не помню точно, когда, но они исправили это некоторое время назад (возможно, когда добавили поддержку библиотек-библиотек в ADT). Причина, по которой он не работал раньше, заключается в том, что сборщик ADT не распознал файл AIDL и не сгенерировал необходимые заглушки Java.