0

i have a android project which can build v2,v3 version

 productFlavors {
       

        v2 {
           
            versionName "${versionMajor}.${versionMinor}.${versionBuild}"
        }

        v3 {
            dexguard = false
            
        }
}

i want to use two version of native jni code for different build version, v2,v3

so, i want to pass the v2,v3 productFlavors to android.mk, how can i do it? or, there is any way to know in android.mk which version (v2,v3) is build ,then it can build different version of jni code

1 Answers1

0

I found one way to do this

1.in build.gradle define a global variable version
2.assign version with different value in different flavor
3.check the version variable to use different android.mk

String version=""
productFlavors {
       

        v2 {
           
            versionName "${versionMajor}.${versionMinor}.${versionBuild}"
            version="v2"

        }

        v3 {
            dexguard = false
            version="v3"
            
        }
}

if (version=="v2") {    
        externalNativeBuild {
            ndkBuild {
                path "AndroidV2.mk"
            }
        }
    }else{
        externalNativeBuild {
            ndkBuild {
                path "AndroidV3.mk"
            }
        }
    }
}