В новой Android Studio 3.3 некоторые значки изменились, и я пытаюсь понять, что означает каждый из них.
Например, на этом рисунке у меня есть два модуля внутри моего проекта, но у одного есть зеленая точка, а у другого — гистограмма. Что это значит?
В дереве есть два компонента: цвет фона/цвет папки и дополнительные значки. Помимо этого, есть также цвет текста, но он в основном используется для VCS и выходит за рамки вопроса. См. этот ответ для значений цветов VCS.
Поскольку вы спрашиваете о папках в целом в одной части, значках в другой, затем о двух конкретно в последней, я собираюсь рассказать о различных папках.
Начнем с того, что цвета точный зависят от цветовой схемы и в некоторых случаях от плагинов (есть несколько плагинов, например плагин Material, которые полностью переделывают папки), которые изменяют их, но я буду использовать нестандартная тема со стандартными иконками (TL;DR: разные цвета, одинаковые иконки).
Прежде чем я начну сам список, есть несколько различных факторов, определяющих значок:
Кроме того, есть тип файла, но он выходит за рамки. Кроме того, чтобы значки папок были видны, проект должен быть успешно скомпилирован. Неудачная компиляция может привести к тому, что AS/IntelliJ интерпретирует папки по-разному или даже отменит регистрацию исходных наборов.
Кроме того, стоит отметить, что неудачные сборки или повторная сборка могут в некоторых случаях изменить значок папки на неправильный (хотя и связанный). В недавней сборке модуля на тестовом проекте модуль библиотеки был незарегистрирован, а модуль Android был помечен как модуль Java. Это ничего не ломает, но стоит помнить, что это не всегда точно.
Во-первых, у нас есть зеленая точка:
Это означает, что это модуль Android.
Есть еще один с кофейной чашкой:
Это может обозначать либо модуль Java, либо корень проекта Android (поскольку в этом отношении проекты Android также считаются проектами Java).
Есть также несколько папок с синим цветом. Эти ноты исходные корни. В представлении проекта вы обычно найдете java
, а также другие языки, если вы разделите их следующим образом:
В представлении Android папка манифеста считается исходным корнем.
Тестовые корни имеют зеленые папки (+ зеленый фон):
Папка гистограммы представляет собой модуль Android библиотека (обратите внимание, что это не то же самое, что обычный модуль Android):
Основное различие между этим и обычным модулем Android заключается в том, что он применяет плагин Gradle com.android.library
по сравнению с обычным com.android.application
, который вы найдете в обычных модулях Android.
У нас также есть простые папки:
И это только папки. Они могут содержать активы или ресурсы, но не считаются чем-то особенным. Они также не связаны ни с чем в среде IDE, но могут иметь значение в зависимости от вашей системы сборки. Он не всегда улавливает такие вещи.
Сгенерированные источники также имеют отдельный значок со значком в виде шестеренки в правом нижнем углу:
Это должно быть знакомо:
Это значок пакета. Обратите внимание, что он используется не только в исходных наборах, но и в ресурсах и активах.
Говоря о ресурсах и активах, это подводит нас к следующему значку:
Это используется для любого корня ресурса, хотя Android обрабатывает их по-разному во время компиляции и загрузки.
Кстати говоря, у тестовых ресурсов тоже есть своя иконка:
Это в дополнение к зеленому фону
Оранжевые папки (использующие почти стандартную тему, и опять же, цвета различаются. Обратитесь к цветовой схеме для получения дополнительной информации, если вы используете нестандартную тему) показывают исключенные папки.
Это соответствует структуре проекта, и вы можете выбрать папки для исключения. .gradle исключен по умолчанию, как видно здесь:
Но вы также можете выбрать другие папки для исключения. Этот исключает его из индексации
И (теоретически) последнее: поддельная папка.
На самом деле это не папка — это файл, содержащий различные конфигурации для модуля, сгенерированные IntelliJ. Тем не менее, по какой-то причине у него есть значок папки (по крайней мере, для меня). Хотя это не папка, я добавил это, чтобы избежать путаницы. Хотя это выглядит как модуль Android, это не так.
Это все уникальные значки папок, которые я могу найти. Надеюсь, я ничего не упустил.
Если вы используете такой плагин, как Пользовательский интерфейс темы материала, у вас могут быть другие значки. Некоторые плагины, подобные этим, объединяют пользовательские значки, что делает этот ответ неверным именно для них. В примере один все иконки (ссылка: значки папок) доступны с именами.
Кроме того, некоторые из стандартных значков IntelliJ можно найти здесь с именами, если вы сомневаетесь. Папка modules
также содержит некоторые значки папок. Я не смог точно определить источники специфичных для Android значков, но это касается некоторых из них.
Похоже, они упали folders/
в конце. Явной замены найти не могу, но ине знаю. Ссылки могут быть просто бесполезны сейчас из-за некоторого обновления, которое изменило структуру темы.
Ссылка не работает, но когда она была опубликована, она указывала на материал по адресу github.com/ChrisRM/material-theme-jetbrains/tree/…. Я предполагаю, что эти файлы были перемещены в разные папки, но не нашел времени, чтобы понять это.