我正在尝试使用apksigner和zipalign工具签名apk,这些工具位于jdk / bin文件夹中。我已经为它设置了路径环境变量。现在我想要做的是,执行一些shell命令,通过ubuntu中的java代码签署我的apk。命令是,
command-1:
keytool -genkey -v -keystore /Desktop/my-release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias app
此命令在运行时需要一些输入,例如名字姓氏等。
command-2:
./zipalign -v 4 inputAPK.apk outputAPK.apk
command-3:
apksigner sign --min-sdk-version 15 --ks my-release-key.jks outputAPK.apk
command-4:
apksigner verify --min-sdk-version 15 outputAPK.apk
以上4个命令我想通过ubuntu环境下的java代码执行它,我该如何实现呢?
答案 0 :(得分:1)
java.lang.Runtime.exec
运行简单代码。看看这些网站:
http://docs.oracle.com/javase/7/docs/api/java/lang/Runtime.html#exec(java.lang.String)
http://alvinalexander.com/java/edu/pj/pj010016
https://www.mkyong.com/java/how-to-execute-shell-command-from-java/
您也可以使用Process.getOutputStream()
方法获取输入。您输入的任何数据都将传递到您的输入流。