Files
MoGoEagleEye/app/script/utils.gradle
yangyakun 5c624c1943 [6.4.0]
[gradle Flavors 切换]
2024-04-10 18:57:23 +08:00

117 lines
3.1 KiB
Groovy

import groovy.json.JsonOutput
import groovy.json.JsonSlurper
/**
* 读取各车型宣传视频本地配置
* @param env
* @return
*/
Object readMediaUrlConfigFromJsonFile(env){
try {
// 加载config.json 文件
File file = new File("${rootDir}/app/config/MediaUrlConfig.json")
def jsonSlurper = new JsonSlurper()
// 解析json
def config = jsonSlurper.parse(file)
def flavorNames = variantVehicleName()
def jsonOutput = new JsonOutput()
def getKey = flavorNames
config.get(env).each {key, value ->
// 匹配flavor对应的 json
println "--------${flavorNames.toLowerCase()}---------${key}"
if(flavorNames.toLowerCase().contains(key)){
getKey = key
return true
}
}
return jsonOutput.toJson(config.get(env).get(getKey))
} catch (IOException e) {
e.printStackTrace()
}
return null
}
/**
* 读取各车型宣传视频本地配置
* @param env
* @return
*/
Object readMusicUrlConfigFromJsonFile(env){
try {
// 加载config.json 文件
File file = new File("${rootDir}/app/config/MusicUrlConfig.json")
def jsonSlurper = new JsonSlurper()
// 解析json
def config = jsonSlurper.parse(file)
def flavorNames = variantVehicleName()
def jsonOutput = new JsonOutput()
def getKey = flavorNames
config.get(env).each {key, value ->
// 匹配flavor对应的 json
if(flavorNames.toLowerCase().contains(key)){
getKey = key
return true
}
}
return jsonOutput.toJson(config.get(env).get(getKey))
} catch (IOException e) {
e.printStackTrace()
}
return null
}
boolean isCurrentDriver(String flavors) {
if(isDriver() && isCurrentFlavors(flavors)){
return true
}
return false
}
boolean isCurrentPassenger(String flavors) {
if(isPassenger() && isCurrentFlavors(flavors)){
return true
}
return false
}
boolean isDriver() {
for (String s : gradle.startParameter.taskNames) {
if (s.contains("Driver") | s.contains("driver")) {
return true
}
}
return false
}
boolean isPassenger() {
for (String s : gradle.startParameter.taskNames) {
println "----------isPassenger------${s}"
if (s.contains("Passenger") | s.contains("passenger")) {
return true
}
}
return false
}
boolean isCurrentFlavors(String flavors){
for (String s : gradle.startParameter.taskNames) {
def lowerCase = flavors.toLowerCase()
if (s.toLowerCase().contains(lowerCase)) {
return true
}
}
return false
}
ext {
isPassenger = this.&isPassenger
isDriver = this.&isDriver
isCurrentFlavors = this.&isCurrentFlavors
isCurrentDriver = this.&isCurrentDriver
isCurrentPassenger = this.&isCurrentPassenger
readMediaUrlConfigFromJsonFile = this.&readMediaUrlConfigFromJsonFile
readMusicUrlConfigFromJsonFile = this.&readMusicUrlConfigFromJsonFile
}