最近因为项目上线,要配合运营的童鞋们上传各渠道apk,其中,搜狗的渠道因为迁移问题,需要给一个他们提供的空的apk签名,然后用公司的签名文件进行签名

没办法,只能手动给apk签名,网上搜索一片均不太完善,特总结一下成功的经验供各位童鞋参考!
    首先,相信各位童鞋都已配好java环境:
  1. 将要签名的apk,签名文件放到同一个文件夹,我这里需要签名的apk为unsign.apk,签名文件为sign.apk
  2. cd到此目录下,输入
    jarsigner -verbose -keystore sign -signedjar sign.apk unsign.apk sign

    解释一下:
    jarsigner 签名命令 java/bin目录下的一个签名工具
            -verbose         输出签名的详细信息 
    -keystore         密钥库位置  后面跟签名文件路径,因为现在在同一个文件夹下,只需要输入文件名称即可
    -signedjar sign.apk    unsign.apk    sign    正式签名,三个参数中依次为签名后产生的文件sign.apk ,要签名的文件unsign.apk和签名文件的别名key alias

     
  3. 根据各位童鞋的具体情况替换具体文件名或路径,执行以下,有大部分人可能会碰到一下错误
    1. jarsigner:找不到VCinemaKey.keystore的证书链。VCinemaKey.keystore必须引用包
    各方百度,说的都不太对,其实,问题主要出现在这里
    jarsigner -verbose -keystore sign -signedjar sign.apk unsign.apk sign

    此时的签名文件为sign,alias为sign,并没有什么问题,可是大部分人,可能签名文件名为  xxx.keystore或者其他名称

    问题就在这里,使用手动签名,必须保证签名文件名称和别名alias一致,这也是其他地方含糊不清的地方
  4. 查看alias,利用studio签名 导入签名文件后可以看到签名的别名
  5. 修改签名文件的名称和别名一致,然后重新运行上述命令,签名成功,大功告成!!
    
    
来自为知笔记(Wiz)

转载于:https://www.cnblogs.com/Android-MR-wang/p/5125002.html

手把手,教你怎样用命令行给apk签名相关推荐

  1. android+命令行编译,打包生成apk文件,Android 使用Android Studio + Gradle 或 命令行 进行apk签名打包...

    默认为debug mode,使用的签名文件在: $HOME/.android/debug.keystore 比如 C:\Users\chengcj1.android\debug.keystore 1. ...

  2. android换台电脑打包签名,Android 使用Android Studio + Gradle 或 命令行 进行apk签名打包 -电脑资料...

    1. 默认为debug mode,使用的签名文件在: $HOME/.android/debug.keystore 2. Release Mode 签名: build.gradle:android {s ...

  3. 命令行验证apk签名

    unzip -p suspect.apk META-INF/CERT.RSA | keytool -printcertjarsigner -verbose -verify suspect.apk

  4. 手把手教你 Creator 2.x 打包 Android APK(Mac篇)

    上一篇我们分享了<手把手教你 Creator 2.x 打包 Android APK(Windows篇)>,今天继续分享 MAC 下的 Android 环境配置. 官方文档: 安装配置原生开 ...

  5. android studio关于命令行打包apk

    前言: 最近刚接触studio,由于项目需要打包apk,就尝试用命令行来进行打包.下面做一下总结: 第一:需要在studio项目中配置 signingConfigs { config { keyAli ...

  6. 一招教你在Linux命令行下测网速

    前言 大家平时使用电脑.手机进行上网的时候,网络的速度往往是你最关心的指标,而网络的好坏我们一般都会使用专业的网速测试软件,根据测试数据来判断网络好坏.那么本文将介绍Linux 命令行下的网络测速工具 ...

  7. [Git]Git教程之msysgit(命令行形式)

    步骤一:在GitHub新建托管项目 1-1. 要托管到github,那你就应该要有一个属于你自己的github帐号 github官网:https://github.com/ 在地址栏输入地址:gith ...

  8. 教你一招——命令行查看笔记本连接过的WIFI密码

    1. 打开命令行,win+R,输入cmd 2.输入如下命令语句 netsh wlan show profiles 3.选择想要知道密码的WIFI账号名称,输入如下命令语句 命令格式如下: netsh ...

  9. android 环境配置和安装, Android系统包说明,基本控件,常用代码,ADB 命令行,APK文件确解,小技艺,...

    一.             环境配置和安装(Android2.2) 参考文章:这里 1.1     JDK 1.2     SDK 下载地址:http://dl.google.com/android ...

最新文章

  1. 【bzoj1251】序列终结者(伸展树)
  2. Android系统移植与驱动开发概述
  3. HDU - 3538 A sample Hamilton path(最短哈密顿路径+状压dp)
  4. python实现最长公共子序列的求解
  5. python类之高级应用
  6. WordPress主题-Qinmei视频主题3.0版本
  7. react中redux的store.js样板文件
  8. 菜谱系列:蒜香炸鸡翅
  9. 计算机round是什么函数,round函数
  10. 常用的正则表达式及符号诠释
  11. Windows开机运行程序
  12. nutch2.3 mysql教程_Nutch2.2.1+MySQL+Solr4.10.3安装部署
  13. 计算机键盘上的tab键是什么键,键盘Tab键有什么作用?
  14. 【Verilog基础】卡诺图化简要点总结
  15. [精简]托福核心词汇37
  16. 用python识别图片上的数字_python 识别图片上的数字
  17. Chrome 推荐几款小说、文案阅读免费插件(UI体验相对不错)
  18. GPS设置及原理教程-如何通过修改gps.conf文件来提高搜星速度
  19. Linux 定期清理内存脚本
  20. Java 父类的引用指向子类对象有啥用 总结

热门文章

  1. 如何找寻最适合的WEB应用安全解决方案(视频)
  2. Python基础18-常用模块之os、sys、json、pickle、shelve、xml、re、logging、configparse、hashlib等
  3. vue使用pwa_如何使用HTML,CSS和JavaScript从头开始构建PWA
  4. ssh框架实现数据库_自顶向下介绍SSH及其如何实现安全的数据共享
  5. 如何使用Redux-saga和ReactDnD测试React和Redux(哇!)
  6. HTML的标签分为哪几类?各标签语法格式是怎样的?
  7. linux 普通用户 mysql_Linux普通用户部署mysql
  8. 百度成立小度蓝牙联盟,DMA+小度App打造蓝牙语音风口
  9. 网络安全技术分析:DDoS的攻与防
  10. input框取消光标颜色手机端不生效