一、使用命令签名

这种方式不需要系统源码编译环境,可以直接对 apk 文件进行签名。

1、获取系统签名文件

首先,从系统源码环境中获取制作系统签名所需相关文件,在 build/target/product/security/ 下的 platform.pk8  和 platform.x509.pem。获取 signapk.jar,在 /out/host/linux-x86/framework/ 下。

2、使用命令进行签名

java -jar signapk.jar platform.x509.pem platform.pk8 你的应用.apk 签名后的应用名.apk

二、使用 Studio 签名

1、制作签名文件

制作签名文件同样需要用到上面的相关文件 platform.pk8  和 platform.x509.pem。

1)将pkcs8格式的私钥 platform.pk8 转化成 pkcs12格式。

openssl pkcs8 -in platform.pk8 -inform DER -outform PEM -out shared.priv.pem -nocrypt

2)把公钥 platform.x509.pem 转换成 pkcs12 格式,并指定 密钥别名

openssl pkcs12 -export -in platform.x509.pem -inkey shared.priv.pem -out shared.pk12 -name 密钥别名

3)生成指定 密钥名称 的密钥文件。

keytool -importkeystore -srckeystore shared.pk12 -srcstoretype pkcs12 -srcstorepass 密钥密码 -alias 密钥别名 -deststorepass 密钥密码 -destkeypass 密钥密码 -destkeystore 密钥名称 -deststoretype pkcs12

2、配置签名脚本

这里直接将签名文件放到了 app 目录下,

android {...defaultConfig {...}signingConfigs {release {storeFile file("platform.keystore")storePassword '123456'keyAlias 'platform'keyPassword '123456'}debug {storeFile file("platform.keystore")storePassword '123456'keyAlias 'platform'keyPassword '123456'}}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'signingConfig signingConfigs.release }debug {minifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'signingConfig signingConfigs.debug }}...
}

在xml中添加系统属性

android:sharedUserId="android.uid.system"

Android 开发制作系统签名相关推荐

  1. android开发获取签名错误,android开发打包签名出现-failed to export application的解决思路...

    在app发布到应用平台的时候需要打包签名,这个时候会遇到一些头疼的事情,比如打包失败会出现failed to export application错误等.我这里就给大家讲一下我的深刻体会.本文为什么说 ...

  2. Android开发时包名、签名、渠道和版本号的易坑点(转)

    本文中总结一下 Android 开发中容易被忽视的一些注意事项吧: 一.谨慎选择包名 包名 (Package Name) 就相当于一款应用在户口本上登记的名字,是系统用来区分不同应用的字段.重复的包名 ...

  3. Android开发之生成自己的签名文件及App签名打包

    首先,要想生成Android App的签名文件必须先配好Android开发环境,因为签名文件的生成需要进入jdk中的bin目录,如果还未配好开发环境,请自行百度. 下面,我们开始生成自己的签名文件, ...

  4. Android开发权威指南(第2版)新书发布

    <Android 开发权威指南(第二版)>是畅销书<Android开发权威指南>的升级版,内容更新超过80%,是一本全面介绍Android应用开发的专著,拥有45 章精彩内容供 ...

  5. Android开发学习笔记(二)——编译和运行原理(1)

    接着上一篇的内容,继续从全局了解Android.在清楚了Android的平台架构(可以看作是静态原理)后,还需要掌握其动态原理.动态原理包含两部分,一部分是编译原理,另一部分是运行原理.有人会说,搭建 ...

  6. 黑客破译android开发代码真就那么容易?

    2019独角兽企业重金招聘Python工程师标准>>> 很多程序员辛辛苦苦开发出的android开发代码,很容易就被黑客翻译了. Google似乎也发现了这个问题,从SDK2.3开始 ...

  7. android api版本 闪退_经验分享:从事 Android 开发六年,我学到的那些事

    你的代码质量应该随着经验的增加而提高,在本文作者基于 Android 开发者六年间,其都学到了什么? 以下为译文: 六年来,我为多家公司编写过各种应用程序.你编写代码或处理代码库的文化和方式会随着你的 ...

  8. Android开发环境——Eclipse ADT相关内容汇总

     Android开发环境将分为SDK相关内容.Eclipse ADT相关内容.模拟器AVD相关内容.调试器DDMS相关内容.日志LogCat相关内容.连接驱动ADB相关内容.内存泄露检测工具MAT相关 ...

  9. 寄Android开发Gradle你需要知道的知识

    当毕业不够两年,身边的朋友慢慢得有车有房有女朋友周末有自己的节目,而我觉得很多美好的事情我都遥不可及,找不到可以让自己开心的事情做,心情很不好.但是同时我觉得沉淀需要时间.努力.耐心和自律,所以我总相 ...

最新文章

  1. 4 年开发 43 款软件,这位乡村教师火了
  2. ubuntu下安装minicom
  3. PyCaret 2.0在这里-新增功能?
  4. StackExchange.Redis 官方文档(六) PipelinesMultiplexers
  5. 阿里如何面试MySQL优化CPU消耗
  6. java.io.IOException: InvalidResourceRequestException: Invalid resource request
  7. 万字长文带你从头构建文本分类器
  8. MATPOWER工具本质原理解析
  9. 通过减小Bootstrapping Error Reduction来进行离线RL学习
  10. 山西最新五大姓氏排名发布,排名第一的是王,第二的竟是……
  11. Python实现汉字人名按拼音或笔画顺序排序
  12. 人宅系列课程年度总结
  13. 父亲节,各大产品借势宣传文案,每一句都“爸”气十足
  14. 【其他】Tensorflow分布式使用简介
  15. 2020年第十一届C/C++ B组第一场蓝桥杯省赛真题
  16. android禁止下拉刷新,Android开发之无痕过渡下拉刷新控件的实现思路详解
  17. c语言的程序运行原理图,C语言main函数的原理详解
  18. 基于jsp网上火车票订购系统
  19. Burp Proxy基本使用
  20. 遗传算法解决八皇后问题(java源码)

热门文章

  1. 项目管理过程组与知识领域
  2. 华硕 内存条 不同步_这颜值谁不爱呢?阿斯加特 洛极W3 RGB内存条 开箱评测
  3. SSM配置头文件和代码
  4. 浪潮NF5270M5、NF5280M5装了2个电源模块,IPMI,BMC只能识别显示1个电源的处理方法
  5. Docker启动失败,报错Cannot connect to the Docker daemon at unix:///var/run/docker.sock.
  6. egg-mongoose的 update only works with $ operators报错
  7. 如何在计算机桌面建立一个软件的快捷图,VB编程:生成EXE图标 (为exe程序在电脑桌面上创建一个快捷图标)...
  8. sql获取汉字首字母
  9. 微信小程序代码上传,审核发布小程序
  10. Python输出水仙花数