Android渠道版本及代码区分的方式

做手机软件经常遇到区分渠道和特殊功能的区分需求,比如你要分发不同的市场或者在集成第三方sdk的时候,需要做好分离,如果你把一家合作的sdk集成到给另一家的apk中去是不妥的,Android处理方式比以前塞班和WM时代要强不少,主要是引入了gradle,可以利用productFlavors把这些处理的很好,比如可可拼音输入法开发的时候要有开发和测试环境版,还有我自己的版本,因为我自己的版本功能要强大很多,但是这些功能普通用户用不上,所以都得隔离出来,只需要配置不同的信息就可以了,在buildConfigField里面可以加入所需的判断信息,示例如下

    flavorDimensions "cc"

    productFlavors {
        // 我自己的版本
        coco {
            dimension "cc"
            buildConfigField("Boolean", "COCO", "true")
        }
        //开发板
        dev {
            dimension "cc"
            buildConfigField("Boolean", "DEV", "true")
        }
        //测试环境版本,可以配置测试环境的服务器请求地址
        tenv {
            dimension "cc"
            buildConfigField("String", "SOME_URL", "\"http://www.cocozq.com/\"")
            buildConfigField("Boolean", "DEV", "true")
        }

        productFlavors.all { flavor ->
        }
    }

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

 桂ICP备15001694号-3