Създавам приложение с различни варианти на компилация. Вкусовете са "Безплатен" и "Платен". Искам да създам някаква логика на моите Java класове, които трябва да се задействат само ако приложението е „Платено“. Следователно имам нужда от начин да получа "applicationId", зададен по време на процеса на изграждане на gradle, както е показано по-долу:
gradle.build
productFlavors {
free {
applicationId "com.example.free"
resValue "string", "app_name", "Free App"
versionName "1.0-free"
}
paid {
applicationId "com.example.paid"
resValue "string", "app_name", "Paid App"
versionName "1.0-paid"
}
След като имам ID на приложението, мога да направя нещо подобно:
if(whateverpackageid.equals("paid")) {
// Do something or trigger some premium functionality.
}
Правилно ли казвам, че по време на процеса на изграждане на gradle "applicationId" в крайна сметка става "името на пакета", след като приложението бъде компилирано? Ако е така, какъв е най-добрият начин да получа или „ID на приложението“, или „име на пакета“, така че да мога да внедря някаква зависима от вкуса логика в моите java файлове?