Куда идет код генератора greenDAO?

Я изучаю greenDAO для Android-версии одного из наших приложений для iOS, в котором интенсивно используются функции CoreData.

Я смущен тем, как начать, хотя. Я видел код DaoGeneratorExample, но не уверен, как это относится к моему проекту.

Предположим, мой проект называется MyApp. Нужно ли мне создавать ВТОРОЙ проект Android под названием MyAppDaoGenerator, который я просто запускаю для создания java-файлов и размещения их в каталогах MyApp?

Или предполагается, что генерация схемы существует в коде MyApp?


person Kenny Wyland    schedule 13.06.2016    source источник
comment
Я бы предложил иметь его в вашем приложении в виде отдельного модуля. Поскольку это помогает отделить его от основной функциональности, а также указать источник, который необходимо отредактировать для обработки изменений схемы.   -  person humblerookie    schedule 15.06.2016


Ответы (2)


Самый простой способ иметь весь код (генератор и сгенерированный) в одном проекте — это разместить весь код генератора в модуле в виде библиотеки Java.

В этом проекте github у вас есть уже созданный модуль, который вы можете импортировать и изменять в соответствии со своими потребностями. В проекте README также есть хороший туториал по запуску кода генератора.

Если вы хотите сделать это с нуля, этот ответ выглядит хорошей отправной точкой, но я всегда использовал модуль импорта метод.

person Jofre Mateu    schedule 15.06.2016
comment
Итак, это не должно быть отдельное приложение для Android. Я мог бы просто иметь класс Generator в своем проекте Android, который имеет метод main(), и я просто вручную выполняю этот метод main() всякий раз, когда обновляю свою схему. Верно? Ваш вариант использует gradle для запуска этой задачи генерации обновленной схемы, тогда как у нуля просто есть другой профиль запуска в их проекте Android Studio. Я правильно понял? - person Kenny Wyland; 15.06.2016
comment
Точно. В конце концов, оба способа практически одинаковы, и с небольшими усилиями вы могли бы работать с импортированным модулем с профилем запуска, только изменив способ предоставления целевого каталога для сгенерированного кода. По умолчанию в импортированном модуле этот каталог указан в файле gradle, и если вы хотите использовать профиль запуска, вам нужно будет определить его в исходном коде или добавить путь к каталогу в качестве аргумента в профиле. - person Jofre Mateu; 16.06.2016

В классе генераторов greenDao вам нужно будет указать каталог вашего основного проекта, в котором вы хотите хранить сгенерированные файлы.

См. учебник, который я написал о полной реализации greenDao с Android интеграция-greenDao-в-ваше-приложение-Android

person Sunday G Akinsete    schedule 17.01.2017
comment
лучший туториал по гриндао, который я видел! - person mik.ro; 05.02.2017
comment
Спасибо @mik.ro Хорошо, что вы нашли это полезным - person Sunday G Akinsete; 06.02.2017