安卓多包共存问题

按照教程配置 productFlavors
每次打出来的包都是 debug 包
配置如下

    defaultConfig {
        applicationId "com.sxc.captain"
        minSdkVersion 16
        targetSdkVersion 22
        versionCode 9
        versionName "1.5.1"
        ndk {}
        manifestPlaceholders = [
            ----
        ]
        multiDexEnabled true
        flavorDimensions "versionCode"
    }
        productFlavors {
        beta {//测试环境
            applicationId "com.sxc.captain.beta"
            applicationIdSuffix ".beta"
            manifestPlaceholders = [
                    app_name: "@string/app_name_beta",
            ]
        }
        product {//生产环境
            applicationId "com.sxc.captain.product"
            applicationIdSuffix ".product"
            manifestPlaceholders = [
                    app_name: "@string/app_name",
            ]
        }
    }

clipboard.png 这个是路径

clipboard.png 这个是包名

阅读 2.4k
1 个回答

You need this

 applicationVariants.all { variant ->
        if (variant.buildType.name.equals("beta"){
                def apk = variant.outputFile;
                variant.outputFile = new File(apk.parentFile, "@string/app_name_beta");
        } else if(variant.buildType.name.equals("product"){
                def apk = variant.outputFile;
                variant.outputFile = new File(apk.parentFile, "@string/app_name");
        }
    }
    

Answer from https://stackoverflow.com/a/2...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题