Какая наилучшая практика для совместного использования классов между продуктом Wear и Android?
Я использую класс, который я сериализую в своем приложении Android Phone, и десериализую свое приложение Android Wear. Они оба находятся в одном Android Studio Project и развертываются как один.
Как я могу поделиться классом между ними, не имея копии класса в каждом пакете? Прямо сейчас я копирую/вставляю его, но есть ли способ включить его в оба приложения?
Структура каталогов:
./
mobile/
...src/etc
wear/
...src/etc
Как обрабатывать общие классы?
Ответы
Ответ 1
В проекте можно создать новый модуль "Библиотека Android" и разместить там свои общие классы.
Затем вы просто добавляете его как зависимость от модулей Mobile и Wear (в структуре Project → Dependencies → Add → Module dependency). Таким образом, вы можете создавать/использовать экземпляры этих классов из обоих модулей.
Ответ 2
Обычно для совместного использования кодовой базы используется модульность. AndroidStudio использует module
именование.
Модуль представляет собой набор исходных файлов и параметров сборки, которые позволяют разделить ваш проект на отдельные функциональные блоки.
Это может быть Android Library
(.aar
) или Java Library
(.jar
). В обоих случаях будет создан новый модуль со строкой apply plugin: 'com.android.library'
в файле build.gradle
. Вы можете использовать его для размещения общего кода.
Чтобы включить/добавить этот модуль, вы должны использовать
File -> New -> Import Module...
Эта команда добавляет всю необходимую информацию в файл settings.gradle
, и вы сможете использовать ее через
implementation project(':<module_name>')