Подтвердить что ты не робот

Какая наилучшая практика для совместного использования классов между продуктом Wear и Android?

Я использую класс, который я сериализую в своем приложении Android Phone, и десериализую свое приложение Android Wear. Они оба находятся в одном Android Studio Project и развертываются как один.

Как я могу поделиться классом между ними, не имея копии класса в каждом пакете? Прямо сейчас я копирую/вставляю его, но есть ли способ включить его в оба приложения?

Структура каталогов:

./
    mobile/
           ...src/etc
    wear/
           ...src/etc

Как обрабатывать общие классы?

4b9b3361

Ответ 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>')