一、首先下载importkeypair
下载地址:https://github.com/getfatday/keytool-importkeypair
下载完之后还需准备如下文件:
platform.x509.pem、platform.pk8
这两个文件是安卓系统源码中的文件。获取方法:要么自己编译生成源码,要么下载源码。
参考这里(也是一个非常麻烦的过程):
http://blog.csdn.net/lpjishu/article/details/50905673
网上找的大多是基于eclipse,android studio环境下不行,因此记录下过程。
#!/bin/sh
# 转换平台签名命令
./keytool-importkeypair -k demo.jks -p 123456 -pk8 platform.pk8 -cert platform.x509.pem -alias demo
# demo.jks : 签名文件
# 123456 : 签名文件密码
# platform.pk8、platform.x509.pem : 系统签名文件
# demo : 签名文件别名
执行脚本文件需要用到Cygwin。
下载地址:
http://www.cygwin.com/
下载过程主要参考这篇。
http://blog.chinaunix.net/uid-20178959-id-1731456.html
太大了没有下下来,很慢,因为走的是镜像网站,虽然我有梯子。
于是,我还是用的MinGW。
MinGW安装可参考我这篇。
http://www.jianshu.com/writer#/notebooks/14869421/notes/15184488
期间遇到了一个问题,在执行脚本文件的时候报错,cannot excute binary file,原因在于我的sh文件是直接从网上复制过去的,格式不正确。
但是最好的解决办法我觉得还是需要在linux环境中编写shell文件。
使用MinGW是仿Linux开发环境。
熟悉MinGW可以参考这篇:
Windows系统结合MinGW搭建软件开发环境
http://www.wowotech.net/soft/6.html
关于shell脚本参考这篇:Shell脚本编程30分钟入门
http://blog.csdn.net/lyy_whg/article/details/39118269
首先需要对shell文件有一定的了解比较好。
特别是shell常见命令。(echo是常见的)可以参考这个链接:
http://www.runoob.com/linux/linux-shell-echo.html
比如这条命令:echo 157 > /sys/class/gpio/export
在Java代码中执行su之后,再执行echo 157 > /sys/class/gpio/export
这条命令,就是成功执行了。(之前由于我不明白echo 157的含义,以为echo 157是一个文件路径,导致没有成功执行命令)。
Shell 的 echo 指令与 PHP 的 echo 指令类似,都是用于字符串的输出。命令格式。显示结果定向至文件:echo"It is a test">myfile
如果不想熟悉环境也可以尝试格式问题解决问题。(我没有成功解决这个问题,所以还是选择了用MinGW进行编写)
解决办法参考链接:http://blog.csdn.net/coder_xia/article/details/52072878
http://blog.csdn.net/qq_21398167/article/details/46426525
——————坑的分割线————
参考链接:
http://www.cnblogs.com/chinas/p/5557727.html
http://blog.csdn.net/u010164190/article/details/51916791
http://blog.csdn.net/wanqieddy521/article/details/6285664
http://blog.csdn.net/cai784921129/article/details/53096627
http://blog.csdn.net/mlq8087/article/details/53483184
http://blog.csdn.net/ngyzqf/article/details/76222074
http://blog.csdn.net/cxq234843654/article/details/51557025