多渠道打包

1. 多渠道打包

1、 修改AndroidManifest.xml配置信息 示例:

<meta-data
        android:name="ANALYSYS_APPKEY"
        android:value="demobank631"/>
<meta-data
    android:name="ANALYSYS_CHANNEL"
    android:value="${ANALYSYS_CHANNEL_VALUE}"/>

渠道value的值修改为${ANALYSYS_CHANNEL_VALUE}

2、 在build.gradle文件内添加渠道信息 例如需要打包的渠道为小米、百度、豌豆荚,则配置如下:

方式 1
android {
    defaultConfig {
        flavorDimensions "versionCode"
    }
    productFlavors {
       xiaomi {
          manifestPlaceholders = [ANALYSYS_CHANNEL_VALUE: "xiaomi"]
        }
        baidu {
          manifestPlaceholders = [ANALYSYS_CHANNEL_VALUE: "baidu"]
        }
        wandoujia {
          manifestPlaceholders = [ANALYSYS_CHANNEL_VALUE: "wandoujia"]
        }

      }
}
// 方式 2
android {
    defaultConfig {
        flavorDimensions "versionCode"
    }
    productFlavors {
        kuan {}
        xiaomi {}
        qh360 {}
        baidu {}
        wandoujia{}
        productFlavors.all { flavor ->
            flavor.manifestPlaceholders = [ANALYSYS_CHANNEL_VALUE: name]
        }
    }
}

以上两种配置方式均可。

3、开发工具打apk包 在AndroidStudio菜单栏点击Build菜单–>Generate signed APK–>选择key并输入密码,选择apk包的存储位置并选择需要的渠道。

注意:如果打出的apk包名称中携带unsigned信息,如:app-baidu-release-unsigned.apk,可以试试打包的时候手动输入一下签名信息的密码。

4、 命令行打apk包 还需在build.gradle文件中配置如下签名信息:

android {
    signingConfigs {
        release {
          keyAlias "analysys"
          keyPassword "analysys" //签名密码
          storeFile file("../keyStore") //签名文件路径
          storePassword "analysys"

        }
      }
}

执行命令./gradlew assembleRelease,此时在app/build/output/apk目录下会生成相应渠道的apk包。 注意:如果打出的apk包名称中携带unsigned信息,如:app-baidu-release-unsigned.apk, 则表示apk包无签名信息,则需要在build.gradle文件中添加如下内容:

buildTypes {
    release {
      signingConfig signingConfigs.release
    }
  }

如果想打指定渠道的包可以执行如下格式命令: ./gradlew assemble + build.gradle中配置渠道名称 + release

如需要打豌豆荚渠道apk包,则执行如下命令:

./gradlew assembleWandoujiaRelease

最后更新于