安卓apk文件签名

一、环境准备

链接: https://pan.baidu.com/s/1D3WxIL5M5ewyFNTqJzARPw 提取码: pd6w

上篇博文编译的apk文件

1、docker build -t android-build:v1.0.1 . 直接制作镜像

2、docker run -it android-build:v1.0.1 /bin/bash 运行进入容器

指定sdk的路径,然后直接打包

3、将容器里面的apk复制到mac宿主机上

宿主机执行,docker ps 查看容器id

docker cp a3f70115a2ca:/home/work/EmptyProject/app/build/outputs/apk/release/app-release.apk ./

二、创建密钥文件,手动创建

1、命令创建密钥文件

keytool -genkey -v -keystore test.keystore -alias YYY -keyalg RSA -validity 4000

( YYY是 别名,4000是有效天数4000天 生成密钥文件 test.keystore)

执行命令之后会提示你设置密码,以及一些公司名称之类的;密码一定要记住,其他随意。

文件创建成功,不能使用 cat命令查看密钥文件,乱码。

2、查看密钥文件

keytool -list -v -keystore test.keystore

3、开始签名

格式: jarsigner -verbose -keystore 签名 -signedjar 签名文件后的文件名 需要签名文件 证书里alias别名

java 复制代码
jarsigner -verbose -keystore E:\xxx\test.keystore  -signedjar 
 xxxx签名后的xxx.apk D:\xxx\未签名的xxx.apk  testalias
 
 
如下 :jarsigner -verbose -keystore D:\test1.keystore -signedjar flutter_demo.apk 
E:\Flutter\flutterdemo\build\app\outputs\flutter-apk\app-release.apk YYY

我这边是将文件都放在了同一个文件夹了,执行命令如下:

bash 复制代码
jarsigner -verbose -keystore test.keystore -signedjar my_signed_app.apk app-release.apk YYY

签名成功!

三、参考

apk反编译和重新打包流程_apk反编译后重新打包-CSDN博客

Flutter给APK签名---两种方式(android 安装包)-CSDN博客

相关推荐
执明wa6 小时前
LayoutInflater详解: XML是如何变成View的?
android·xml·开发语言·android studio
404_coder7 小时前
源码视角下的 Android 开机流程:从 Zygote、SystemServer 到 Launcher
android
二流小码农7 小时前
鸿蒙开发:以登录案例了解代码架构MVVM
android·ios·harmonyos
用户69371750013848 小时前
从代码生产者到 AI 协作者:软件工程师的角色重构
android·前端·后端
GitLqr8 小时前
别在 Flutter 的 main() 里乱锁屏幕方向,小心 iPad 分屏功能被你搞没了
android·flutter·ios
sg_knight8 小时前
MySQL 存储过程详解:从入门到实战
android·数据库·mysql·database·dba·关系型数据库·db
爱笑鱼8 小时前
Binder(四):ioctl(BINDER_WRITE_READ) 之后,事务怎样到达目标进程?
android
AFinalStone8 小时前
Android 7系统休眠唤醒(二)开机全链路—BootROM到Launcher
android·电源管理·休眠唤醒
Mr YiRan9 小时前
Android NDK开发之统计到未被回收的图片
android