BuildConfig не может правильно создавать значения из переменных (Gradle Android)Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 BuildConfig не может правильно создавать значения из переменных (Gradle Android)

Сообщение Anonymous »

Цель

Создание APK-файлов для различных сред с использованием типов сборки

Подход

Я использую этот пост, чтобы создать свой APK без Android Studio. Все работает, кроме случаев, когда я использую переменные среды в gradle:

Перед сборкой я устанавливаю переменную среды

Код: Выделить всё

export MY_API_TOKEN="ABCDEFGH"
Затем в моем build.gradle:

Код: Выделить всё

buildTypes {

debug {
buildConfigField("String", "MY_API_TOKEN", System.getenv('MY_API_TOKEN'))
}

}
И когда я выполняю: gradle assemble, я получаю эту ошибку:

Код: Выделить всё

/home/apps/app/src/main/java/com/my/package/controller/api/MyAwesomeCode.java:64: error: cannot find symbol
BuildConfig.MY_API_TOKEN;
^
symbol:   variable BuildConfig
location: class RestAPI
/home/apps/app/build/generated/source/buildConfig/debug/com/my/package/BuildConfig.java:14: error: cannot find symbol
public static final String MY_API_TOKEN = ABCDEFGH;
^
symbol:   variable ABCDEFGH
location: class BuildConfig
Я попробовал несколько комбинаций и получаю ту же ошибку:
  • BuildConfig не создается правильно (Gradle Android)
  • Переменная BuildConfig. Ошибка: невозможно найти символ
  • https://medium.com/@rafamatias/gradle-a ... c0e296ee93
  • Gradle: как использовать BuildConfig в библиотеке Android с флагом, который устанавливается в приложении
Я также проверил такое же поведение с переменными

Код: Выделить всё

def MY_API_TOKEN_VAR = "ABCDEFGH"

debug {
buildConfigField "String", "MY_API_TOKEN", MY_API_TOKEN_VAR
}
Ошибка:

Код: Выделить всё

BuildConfig.java:14: error: cannot find symbol
public static final String MY_API_TOKEN = ABCDEFGH;
^
symbol:   variable ABCDEFGH
location: class BuildConfig
Вопрос

buildTypes работает только для жестко запрограммированных значений в build.gradle?< /п>

Подробнее здесь: https://stackoverflow.com/questions/580 ... le-android
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»