惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
S
Schneier on Security
A
Arctic Wolf
Scott Helme
Scott Helme
S
Securelist
Schneier on Security
Schneier on Security
W
WeLiveSecurity
Attack and Defense Labs
Attack and Defense Labs
Security Latest
Security Latest
Project Zero
Project Zero
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Know Your Adversary
Know Your Adversary
P
Palo Alto Networks Blog
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Google DeepMind News
Google DeepMind News
P
Proofpoint News Feed
C
Check Point Blog
F
Full Disclosure
Stack Overflow Blog
Stack Overflow Blog
H
Hacker News: Front Page
T
The Blog of Author Tim Ferriss
TaoSecurity Blog
TaoSecurity Blog
Vercel News
Vercel News
A
About on SuperTechFans
N
News and Events Feed by Topic
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
The GitHub Blog
The GitHub Blog
S
Security Affairs
Y
Y Combinator Blog
T
The Exploit Database - CXSecurity.com
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Forbes - Security
Forbes - Security
IT之家
IT之家
WordPress大学
WordPress大学
Last Week in AI
Last Week in AI
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
F
Fortinet All Blogs
N
Netflix TechBlog - Medium
The Register - Security
The Register - Security
Jina AI
Jina AI
云风的 BLOG
云风的 BLOG
T
Tailwind CSS Blog
K
Kaspersky official blog
Hacker News: Ask HN
Hacker News: Ask HN
C
Cisco Blogs
MyScale Blog
MyScale Blog
博客园 - 【当耐特】
T
Threat Research - Cisco Blogs
D
Docker
G
GRAHAM CLULEY

博客园 - 冯叶青

OpenAI vs Anthropic API 对比:响应体、请求体、消息格式与工具调用 GitHub Actions 自动部署流程 Git分支自动合并脚本:基于时间戳的冲突解决方案 Next.js lingui.js 多语言自动提取翻译键 - ats-node React实现短信验证码输入组件 Next.js 中优雅地使用 Lottie 动画 Next.js 路由参数更新最佳实践:从 replaceState 到 nextReplaceState Jenkins构建时SWR模块导入报错解决方案 解决 Jenkins 环境下 Lingui 构建报错 "btoa is not defined" git 提交 实现大图自动压缩功能 React lingui.js 多语言自动提取翻译键 - ast node html2canvas 解决截图空白问题 react 实现前端发版监测 JS根据文件名获取文件类型 JS获取本机IP地址 适用于react、vue菜单格式化工具函数 git 内容提交 实现大图拦截功能 JS实现视频截图 next.js 利用中间件(middleware.ts)实现PC与移动路由无缝切换 JS-SDK 配置,实现微信分享功能
Android生成签名文件及对apk进行签名
冯叶青 · 2024-03-15 · via 博客园 - 冯叶青

1. 生产签名文件

keytool -genkey -v -keystore esg.jks -keyalg RSA -keysize 2048 -validity 10000 -alias esg
  • keytool: 这是Java提供的一个命令行工具,用于管理密钥库和证书。

  • -genkey: 这个选项告诉keytool生成一个新的密钥对。

  • -v: 这个选项使keytool在执行时输出详细信息,例如生成的密钥对的详细信息。

  • -keystore esg.jks: 这个选项指定了要创建或使用的密钥库文件的名称,这里是esg.jks

  • -keyalg RSA: 这个选项指定了生成密钥对时使用的密钥算法,这里是RSA算法。

  • -keysize 2048: 这个选项指定了生成的RSA密钥对的长度,这里是2048位。

  • -validity 10000: 这个选项指定了生成的证书的有效期限,以天为单位,这里是10000天(约合27年)。

  • -alias esg: 这个选项指定了生成的密钥对的别名。在之后的操作中,可以使用这个别名来引用这对密钥。

2. 对apk进行签名

apksigner sign --ks esg.jks --ks-key-alias esg --ks-pass pass:123456 –out app-release-sign.apk app-release.apk
  • apksigner: 这是Android SDK提供的一个命令行工具,用于对APK文件进行签名。

  • sign: 这个命令告诉apksigner对APK文件进行签名操作。

  • --ks esg.jks: 这个选项指定了存储密钥的密钥库文件,即esg.jks

  • --ks-key-alias esg: 这个选项指定了要使用的密钥对的别名,即esg

  • --ks-pass pass:123456: 这个选项指定了密钥库的密码。这里密码为123456pass:告诉工具密码的形式是明文。请注意,这不是最安全的做法,实际中可能会使用更安全的方式来提供密码,比如使用密钥库密码提供者。

  • -out app-release-sign.apk: 这个选项指定了签名后生成的APK文件的输出路径和名称,即app-release-sign.apk

  • app-release.apk: 这是要签名的Android应用程序文件,即输入文件。

备注

apksigner工具一般不能直接使用,也不用下载,安卓开发工具自带

一般在 C:\Users\AILN\AppData\Local\Android\Sdk\build-tools\34.0.0

将这个目录放入到系统变量PATH中即可