ANDROID 使用gradle统一管理第三方APP KEY

来源:互联网 发布:windows 7默认壁纸 编辑:程序博客网 时间:2024/06/06 19:35
 
为了区别处理第三方正式OR测试环境不同的APPKEY,例如
JPUSH_APPKEY
UMENG_APPKEY
com.baidu.lbsapi.API_KEY
一般的处理是在manitest.xml里面


<!-- 测试的百度地图key-->
<meta-data
    android:name="com.baidu.lbsapi.API_KEY"
   android:value="YOUR KEY"/>

<!--&lt;!&ndash;正式的百度地图key&ndash;&gt;-->
<!--<meta-data-->
    <!--android:name="com.baidu.lbsapi.API_KEY"-->
    <!--android:value="YOUR KEY" />-->
缺点:每次更改不同环境的值还得手动改,说不定有时候还忘记改了!

但是
如果使用gradle来统一管理就十分方便

step 1:修改manifest中值的定义

<meta-data android:name="JPUSH_APPKEY" android:value="${JPUSH_APPKEY_VALUE}"/>
<meta-data android:name="UMENG_APPKEY"android:value="${UMENG_APPKEY_VALUE}"/>

step2: 在gradle中添加值

buildTypes {
    release {
        buildConfigField "boolean""LOG_DEBUG""false"
        shrinkResources true
        zipAlignEnabled true
        signingConfig signingConfigs.release
        minifyEnabled true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        //目标代码行
        manifestPlaceholders = [JPUSH_APPKEY_VALUE "YOUR APPKEY",UMENG_APPKEY_VALUE "YOUR APPKEY VALUE"]
    }

    debug {
        buildConfigField "boolean""LOG_DEBUG""true"
        //目标代码行
        manifestPlaceholders = [JPUSH_APPKEY_VALUE "YOUR APPKEY",UMENG_APPKEY_VALUE "YOUR APPKEY"]
    }
}


tips,还有渠道号也可以使用这种方法,想必这个大家已经了解了
productFlavors {    baidu {        manifestPlaceholders = [UMENG_CHANNEL_VALUE: "baidu"]    }
0 0
原创粉丝点击