zoukankan      html  css  js  c++  java
  • android结合Jenkins使用V2签名

    今日客户对安卓apk进行代码扫描时发现漏洞,后经过研究解决办法为安卓V2签名。

    解决办法:Jenkins只能用命令行去设置签名。

    步骤1:ZipAlign

    zip对齐,因为APK包的本质是一个zip压缩文档,经过边界对齐方式优化能使包内未压缩的数据有序的排列,从而减少应用程序运行时的内存消耗 ,通过空间换时间的方式提高执行效率(zipalign后的apk包体积增大了100KB左右)。
    打开cmd,把目录切换到SDK的build-tools目录下(例如 E:SDKuild-tools25.0.2),执行:

    zipalign -v 4 in.apk out.apk //执行4字节对齐优化操作 
    zipalign -c -v 4 in.apk //检查当前APK是否已经执行过Align优化

    步骤2:

    apksigner是一款在Android build tools 24.0.3及以上版本中提供的对apk文件签名以及验证签名信息的工具,它与jarsigner的作用类似,但比后者功能更加强大。注意在使用apksigner前,请先对APK执行zipalign,而不能在之后执行zipalign操作,这一点与jarsigner不同。

    apksigner sign --ks demo.jks --out out.apk in.apk

    示例:

    #!/bin/bash
    cd /Users/jenkins/jenkins/tool/android-sdk-macosx/build-tools/26.0.2
    ./zipalign -v 4 ${WORKSPACE}/version/${JOB_NAME}_${BUILD_NUMBER}_${SVN_REVISION_2}.apk ${WORKSPACE}/version/${JOB_NAME}_${BUILD_NUMBER}_${SVN_REVISION_2}_V2.apk

    ./apksigner sign --ks /Users/jenkins/Documents/Android_keystore/essencefund.keystore --ks-pass pass:essencefund ${WORKSPACE}/version/${JOB_NAME}_${BUILD_NUMBER}_${SVN_REVISION_2}_V2.apk

    ./apksigner verify -v ${WORKSPACE}/version/${JOB_NAME}_${BUILD_NUMBER}_${SVN_REVISION_2}_V2.apk

    cd -

    原文出处:

    https://blog.csdn.net/lamelias/article/details/53669417 

    https://www.jianshu.com/p/e1e2fd05bb62

    https://www.jb51.net/article/141954.htm

  • 相关阅读:
    【javascript基础】【转】各浏览器对页面外部资源加载的策略
    【javascript基础】【转】javascript模块化、模块加载器初探
    【javascript基础】js线程机制【转】
    【css】【转】那些年我们一起清除过的浮动
    IL入门之旅(三)——Dump对象
    学习TPL(一)
    弱引用应用的注意点
    IL入门之旅(二)——动态包装
    学习TPL(二)
    IL之旅(前言)
  • 原文地址:https://www.cnblogs.com/wwyxyt/p/10169697.html
Copyright © 2011-2022 走看看