Как получить доступ к времени, сгенерированному apk в Android программно?

Можно ли программно получить время APK?

Я хочу отобразить это во время сборки для целей идентификации сборки.

Я знаю, что могу жестко закодировать строку времени в файле gradle и получить к ним доступ в моем коде Kotlin, как предполагает ответ это, но это будет означать каждый раз, когда мне нужно изменить строку при повторном создании сборки.

Любая помощь будет оценена по достоинству.

вызовите что-то вроде System.currentTime (псевдокод) в вашем build.gradle, чтобы вам не приходилось вручную изменять значение

Zun 16.07.2018 10:58

См .: stackoverflow.com/questions/19172565/…

Zun 16.07.2018 10:59
0
2
85
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Для этого я написал следующий код в файле build.gradle.

android {
    buildTypes {
        debug {
            buildConfigField "String", "BUILT_ON", "\"${getBuildDateTime()}\""
        }
    }
}

static def getBuildDateTime() {
    return "Build Generated On: ${new Date().format("dd MMMM, 2018 @ h:mma")}"
}

Теперь я могу получить доступ к этой переменной в своей деятельности

Log.d(BuildConfig.BUILT_ON);

Вы можете использовать этот код в defaultConfig вашего проекта, чтобы настроить время сборки вашего приложения.

setProperty("archivesBaseName", "Application_Name_$versionName.$versionCode" + "_" + getDate())

static def getDate() {
def date = new Date()
def formattedDate = date.format('yyyy-MMM-dd_EEE_HH.mm')
return formattedDate
}

Другие вопросы по теме