Intereting Posts
Android Studio 1.0.2 «minifyEnabled true» сбрасывает подписанный выпуск apk Настройка android: animateLayoutChanges программно Отображение кэшированной версии webview в android Почему мое меню редактирования / вставки EditText находится под EditText? Как изменить всплывающее окно z-порядка? Как создать анимированный фоновый градиент, например, приложение Instagram? Как получить имя файла из пути к файлу в android android.view.ViewGroup.dispatchGetDisplayList (ViewGroup.java:3147) Кнопка не вызывает OnClickListener с первого щелчка Android: AlertDialog с пользовательским представлением и закругленными углами PANIC: Разбитый путь системы AVD. Проверьте значение ANDROID_SDK_ROOT Невозможно изменить цвет кнопки радио на Android Определите, было ли приложение Android загружено из Google Play против Amazon vs Other Ошибка памяти Bitmap для Android – Ошибка: нехватка памяти при распределении 8294416 байт Переопределить макет xml из фреймворка android Неоткрытое исключение, созданное финализатором: ошибка API Google или ошибка ядра Samsung?

Советы по организации крупных проектов Android?

Мой текущий проект становится ужасно большим. У меня есть десятки видов деятельности, адаптеры, фрагменты, макет xmls и другие ресурсы.

В моих (более мелких) предыдущих проектах я организовал материал с стилем категории 1 пакет / 1. Поэтому у меня был com.stuff.xy.adapter, com.stuff.xy.activity и т. Д. Теперь эти пакеты содержат слишком много элементов, и я нахожу, что трачу много времени на поиск определенного класса в иерархии пакетов.

Я использую Eclipse, и есть некоторые ярлыки, которые можно использовать (например, перейти к определению класса), но они имеют тенденцию быть ситуативными (я не могу использовать это, чтобы быстро перейти к макету define xml).

Не могли бы вы поделиться некоторыми советами по организации крупномасштабных проектов? Или некоторые плагины для этого, возможно? (Это могло бы помочь, например, если бы я мог объединять исходные файлы, относящиеся к определенному экрану приложения – адаптерам, макетам, действиям и фрагментам, – поэтому я могу быстро их открыть)

EDIT: после многих месяцев разработки крупных проектов

Сначала я попытался пойти с рабочими наборами с Eclipse. На самом деле это не порезало для меня, моя проблема заключалась в том, что наш единственный проект для Android был просто слишком большим, содержащим множество ресурсов, классов, интерфейсов и т. Д. Беседа с рабочими наборами в контексте одного проекта заняла слишком много времени , Я думаю, что они в основном полезны для организации проектов в одном рабочем пространстве.

В конечном итоге мы разделили наш огромный единый проект на множество небольших проектов с андроидными библиотеками и единый проект «основного приложения», который зависел от всех этих меньших. Таким образом, мы могли бы разделить ресурсы между этими библиотечными проектами (было много макетов, значений, стилей, которые использовались только в определенных частях приложения) и, конечно же, кода. Я также создал базовую библиотеку, которая зависела от всех других библиотек и содержала ресурсы и (базовые) классы, необходимые для каждой части приложения.

Solutions Collecting From Web of "Советы по организации крупных проектов Android?"

В Eclipse вы можете использовать рабочие наборы для фильтрации файлов источника / макета / ресурсов в представлении Project Explorer. Это немного более мощный, чем пакеты, поскольку он работает со всеми файлами, включая макеты и изображения, а не только с исходными файлами java.

Например, вы можете создать домашний рабочий набор, который содержит HomeActivity.java, HomeAdapter.java, res / layout / home.xml, res / drawable / home_icon.png и т. Д.

Для всех моих проектов андроида я предпочитаю сортировать код в следующей структуре:

com.company.projectname – это пакет приложения. Базовые пакеты:

model – все мои бизнес-объекты

logic – услуги и объекты, реализующие бизнес-логику

screens – все виды деятельности проекта. Если для действий требуются адаптеры и т. Д., То каждое действие помещается в отдельный пакет под пакетом экранов, а соответствующий материал помещается в тот же проект.

tools – пакет с классом Utility. SettingsUtil и так далее.

В корневом пакете у меня обычно есть интерфейс Constants.java с константами.

Еще один совет.

Используйте Ctrl-Shift-R, чтобы быстро открыть ресурс (вы получите раскрытие автозаполнения) и Ctrl-Shift-T, чтобы быстро открыть класс java. Список также будет автоматически заполняться с использованием последних открытых файлов.

Возможно, совет : быстро перейти к объявлению в Eclipse

Удерживайте Ctrl , перемещаясь над классом или методом. Через 1 секунду вы получаете всплывающее окно с открытой декларацией / открытой реализацией.

Очень полезно в большом проекте.

Для остальных я рекомендую просто сделать его интуитивно понятным и отсортировать все действия в пакете, а также все вычисления, например

Для вашей озабоченности «Я не могу использовать это, чтобы быстро перейти к макету definiton xml», вы можете щелкнуть имя макета xml, затем ctrl + shift + R приведет вас к этой странице определения.