通过gradle脚本实现 自动上传apk到爱加密服务器加固并打渠道包

背景:现在项目使用的是第三方加密:爱加密,jenkins配置完打包后 打出正式包 再交由第三方平台加密 之前是手动上传 ,这就相对来说不够自动化。

  • 下面是通过脚本自动上传爱加密的逻辑
  • 1.执行完assembleRelease 打出混淆的apk
  • 2.将生成的apk 绝对路径进行加固
//打包开发环境apk 混淆 再加固 打渠道包到i加密服务器 上传蒲公英 发送邮件功能使用蒲公英自带的邮件功能
task packageReleaseDingTalk {
    def apkDirPath = "${project.buildDir}/outputs/apk/release"
    deleteDir(apkDirPath)
    dependsOn("assembleRelease")
    doLast {
        def apkFile = fetchApk(apkDirPath)
        def jPath = jiagu(apkFile)
    }
}
  • 加固和渠道包的逻辑如下
private def jiagu(File apkFile) {
    def jarPath = '../encrypt/ijiami-v4.2.5.jar'
    File jarFile = file(jarPath)
    if (!jarFile.exists()) {
        if (!jarFile.parentFile.exists()) {
            jarFile.parentFile.mkdirs()
        }
        exec {
            executable = 'curl'
            args = ['-o', jarPath, 'https://tc-app-01.oss-cn-shenzhen.aliyuncs.com/encrypt/ijiami-v4.2.5.jar']
        }
    }
    return uploadServer(apkFile)
}
//配置请求到i加密服务器
private def uploadServer(File apkFile) {
    def jiaguApkName = 'ijiami_signed'
    def strategy = '项目名字'
    def jiaguSignJks = '你的.jks'
    //加固渠道配置
    def channel = 'release'
    exec {
        executable = 'java'
        args = ['-jar', '../encrypt/ijiami-v4.2.5.jar', '-t', 'apk', '-u', 'https://runenc.ijiami.cn:8080', '-r', '你的帐号', '-w', '你的密码', '-k', apkFile.path, '-s', strategy, '-i', true, '-g', jiaguSignJks, '-d', apkFile.parentFile.path, '-n', jiaguApkName, '-p', true, '-c', channel]
    }
    return "${apkFile.parentFile.path}/${jiaguApkName}.apk"
}

先下载爱加密提供的jar 下载完去配置对应的配置文件 上传。就ok了

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容