Минимально необходимые файлы для сборки Android - PullRequest
0 голосов
/ 28 октября 2019

Попытка найти минимальный исходный код и файлы сборки, необходимые для создания проекта Android в Android Studio. Я хочу публиковать на github и не загружать сгенерированные файлы сборки или двоичные файлы.

У меня есть Android.gitignore , но я все еще вижу, как в репозиторий выталкивают еще несколько файлов, которые могут не понадобиться. Я понимаю несколько очевидных, но о других, нужны ли они мне, и если так любезно, объясните использование.

Итак, вопрос, нужно ли мне следующее, и если да, то краткое описание почему?

root

  1. build.gradle

  2. gradle.properties

  3. gradlew

  4. gradlew.bat

  5. settings.gradle

/ приложение

  1. app / build.gradle

  2. app / proguard-rules.pro

/ gradle (протестировано, android может повторно загрузить / сгенерировать, следуя ему, если его нет)

  1. gradle / wrapper / gradle-wrapper.jar

  2. gradle / wrapper / gradle-wrapper.properties

1 Ответ

2 голосов
/ 28 октября 2019

Этот вопрос может иметь два разных ответа в зависимости от значения слова Необходимое .

Первое (настоящее)

Предполагаетсяв вашем проекте в настоящее время есть эти файлы, если ваш вопрос:

Должен ли я зафиксировать эти файлы в моем репозитории Git?

Ответ да все они, и я объясняю почему:

  • root

    • build.gradle -> определяет конфигурацию для всех модулей Gradle в вашем проекте (например, используйте одни и те же удаленные репозитории для загрузки некоторых плагинов Gradle)
    • gradle.properties -> определяет некоторые дополнительные флаги, используемые при построенииприложение (например, включение инкрементного KAPT, включение AndroidX Jetifier) ​​
    • gradlew -> вызывает оболочку Gradle (которую можно найти в gradle/wrapper/gradle-wrapper.jar), чтобы избежать установки Gradle при сборкеваш проект на Darwin / Linux
    • gradlew.bat -> то же самое gradlew , но для Windows
    • settings.gradle -> определяет список модулей, которые являются частью вашего проекта
  • app /

    • app / build.gradle -> определяет конфигурацию только для вашего модуля приложения (например, его типы сборки, его разновидности,его код версии и название версии)
    • app / proguard-rules.pro -> определяет правила запутывания, когда ваше приложение включает минификацию
  • gradle /

    • gradle / wrapper / gradle-wrapper.jar -> предоставляет одну и ту же версию фляги Gradle для всех пользователей,Это очень важно, потому что заставляет пользователей использовать ту же версию оболочки Gradle для компиляции вашего приложения
    • gradle / wrapper / gradle-wrapper.properties -> так же, как и выше,определяет, какая версия оболочки Gradle вам нужна

Секунда (бесполезная)

Теперь я дам вамответ на вопрос:

Эти файлы строго необходимы для компиляции проекта Android?

Чтобы успешно скомпилировать проект Android с помощью Gradle, простонужен рут build.gradle, если на вашем компьютере установлен Gradle, или build.gradle + файлы оболочки, если на вашем компьютере не установлен Gradle. Теоретически вы можете:

  • поместить свой код приложения в корневой проект, и это позволит вам build.gradle и settings.gradle
  • отключить запутывание, и это исключит вас proguard-rules.pro
  • удалить gradle.properties и установить свойства с помощью командной строки

Очевидно, что это решение не будет реализовано в сценарии реального проекта.

...