Я новичок в студии android and android. Проект, над которым я сейчас работаю, имеет src/main/Java, и все материалы java находятся в этой папке. Также есть модуль в проекте с той же иерархией. Мне было интересно, могу ли я изменить эту структуру? Это структура, навязанная студией Android? по градле? Я хотел бы удалить часть «main/java» и переместить весь мой код в папку «src». (org, com и т. д. перейдут на два уровня вверх) Есть ли что-нибудь, что мешает мне это сделать?Android src/main/java folder
ответ
Это структура по умолчанию для проектов Gradle для Android.
Вы можете изменить его с sourceSets
штуковина (я не уточненный с Groovy типологией;)):
android {
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
}
}
}
Тем не менее, я призываю вас, чтобы сохранить стандартную структуру, как это очень удобно, когда вы начинаете использовать более продвинутые функции, такие как variants.
Дополнительную информацию можно найти в official documentation.
Это абсолютно разумно. Но моя проблема - приложение, у которого есть приложение Cordova, и для того, чтобы я мог использовать CLI для обновления кордовы или установки плагинов, мне пришлось бы перемещать папки под src и избавляться от папки main/java. – James
Всякий раз, когда вы начинаете новый проект в Android Studio, он автоматически создает среду для приложения, чтобы она легко запускалась на ОС. основная папка внутри src папка хранит все основные компоненты вашего приложения для Android. Он хранит все ваши java-файлы в java и файлы ресурсов в res. основной также хранит Android Manifest. Короче говоря, это правильный и предпочтительный способ для среды ОС Android.
Я также рекомендовал бы сохранить структуру такой, какой она есть. По мере продвижения с развитием Android вы начинаете использовать buid variants
. Это означает, что у вас будет отдельный набор файлов ресурсов (например, макеты действий, графики, файлы конфигурации в xml и т. Д.) + Исходный код для разных настроек, например. когда вы отлаживаете или когда вы строите и тестируете свое приложение как часть автоматической сборки/тестирования на сервере CI или когда вы обычно создаете его для выпуска.
В этом случае, вы будете иметь debug
/Java и debug
/Рез + main
/Java и main
/Рез. main
и debug
- это образцы вариантов вариантов вариантов сборки, вы можете иметь столько вариантов сборки, сколько хотите (например, release
, ci
и т. Д.). Каталог res
здесь resources
. Этот каталог не компилируется и поставляется с вашим APK. Каталоги java
содержат исходный код (и компилируются). Смешивание этой проблемы приводит к ошибке, и если вам удастся это сделать и скомпилировать, она просто делает вашу структуру проекта незаметной.
В целом, структура имеет смысл, на мой взгляд, и сделана с учетом расширения проекта. Я бы сохранил это как есть.
Это абсолютно разумно. Но моя проблема - приложение, у которого есть приложение Cordova, и для того, чтобы я мог использовать CLI для обновления кордовы или установки плагинов, мне пришлось бы перемещать папки под src и избавляться от папки main/java. – James
Вот как структурирован проект CLI. – James
- 1. Android Studio Drawable Folder
- 2. Android: Understanding drawable folder
- 3. acct folder android
- 4. Temp folder in android
- 5. Android Raw Folder Path
- 6. Android Anim Folder
- 7. Android Raw Folder Media Player
- 8. /cache/recovery folder in android
- 9. Android Studio missing drawable Folder
- 10. Commit Folder Android Studio Project
- 11. android: Zip Folder is invalid
- 12. Путь к файлу Android Folder
- 13. Android Folder drawable-xlarge vs drawable-tvdpi
- 14. Android Localization structure of values folder
- 15. Android Drawable folder for xperia c3
- 16. Obfuscate Folder Structure, пакеты в Android Studio
- 17. Android PhoneGap www folder in sdcard
- 18. Libs folder vs build path dependency (ANDROID)
- 19. Password Protect Api for Folder в Android
- 20. Где находится/data/data folder android
- 21. Google folder api settings folder parents
- 22. Как перенаправить example.com/folder/ на www.example.com/folder/?
- 23. Разница между domain.com/folder и domain.com/folder/
- 24. Meteor.isCordova Folder
- 25. Intellij Idea lib folder export
- 26. program folder listviews
- 27. Crop Image from drawable folder
- 28. Sqlite db in assets folder
- 29. Внешние библиотеки vs libs folder
- 30. phonegap 3.4.0, проект www folder
https://docs.gradle.org/current/userguide/java_plugin.html#sec%3asource_sets – dymmeh