【转自】http://blog.youkuaiyun.com/qqxiaoqiang1573/article/details/52252843
简介
我们在做系统级的app开发时,肯定会遇到的问题就是给app签名了,像这种系统级的app开发,Android系统是没有直接给出keystore的签名文件的,那么我们要怎么给自己的app签上系统级签名呢?下面介绍两种方法。
前提
要做系统签名必须要拿到的两个文件platform.x509.pem,platform.pk8它们存放在系统的/build/target/product/security/目录下。拿到这两个文件后就可以做我们的app签名了。系统下的其他签名类似,大家可以以此类推,举一反三。
CMD命令方式
- 1
- 1
这样我们生成的app就是有系统签名的app了,但是我们每次都要使用命令的方式来执行给我们开发调试的app签名是不是很烦,有没有更好的方式呢?下面就重点说下keysotre的方式。
keystore方式
最前面我们说了,系统没有提供keystore的签名给我们,那这个keystore是怎么来的?看来只有自己动手生成这个文件了,来看我们怎么制作这个keystore吧。
环境:Linux
文件:platform.x509.pem,platform.pk8
命令:
- 1
- 1
- 1
- 1
- 1
- 1
依次执行完这3条命令后我们的签名文件platform.keystore就生成啦,接下来要做的事情就是导出app的时候使用这个签名就好了。nice~~~
这样一条一条命令的输入是不是很麻烦,并且可能会忘记部分参数的拼写,所以这里就要用到shell脚本了,根据这3条命令我们可以写一个小脚本,完成签名的生成。下面来看下个人写的一个脚本吧。这样就一劳永逸的解决了生成签名会忘记部分参数的问题了。
generatesignature.sh
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
注意:这里需要特别注意的地方就是,我这个kestore的生成是在Linux环境制作的,所以在windows环境下的朋友可能需要自己想点办法了。