概述
移动应用上架需要备案,备案时需要提供以下技术信息:
-
安卓平台:APP包名、APP公钥、APP签名MD5值
-
iOS平台:Bundle ID、APP公钥、证书SHA-1指纹
本文档介绍这些信息的获取方法,包括命令行和图形界面两种方式。
一、安卓APP备案三要素获取方法
1. APP包名(Package Name)
APP包名是应用程序的唯一标识符,格式通常为逆序域名(如 com.example.myapp)。
方法一:从AndroidManifest.xml查看(最准确)
-
使用Android Studio打开项目
-
在左侧导航栏中找到
app→src→main→AndroidManifest.xml -
在根
<manifest>标签中,package属性值就是包名
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.tencent.cloud.demo"> <!-- 这里就是包名 -->
...
</manifest>
方法二:从APK文件解析
-
将APK文件拖入Android Studio
-
或使用APK分析工具(如Jadx-GUI、APK Info)
-
在解析结果中查找
AndroidManifest.xml的package属性
备案填写时直接复制 package 属性的完整值。
2. APP公钥(Public Key)
公钥是签名证书的公钥部分,用于验证APK签名来源的真实性。
获取步骤:
步骤一:获取签名证书文件(.jks或.keystore)
-
如果使用DCloud:在开发者中心 → 证书管理 → 下载安卓云端证书
-
如果使用腾讯云:在移动应用安全服务中下载证书文件
-
如果本地有证书:直接使用本地证书文件
步骤二:使用Keytool提取公钥
-
打开命令行终端(Windows:CMD/PowerShell;Mac:Terminal)
-
执行以下命令(替换括号内内容):
keytool -list -rfc -keystore [证书文件路径] -alias [证书别名] -storepass [密码]
示例命令:
keytool -list -rfc -keystore C:\app\my_keystore.jks -alias my_alias -storepass 123456
-
复制输出中以
-----BEGIN PUBLIC KEY-----开头,以-----END PUBLIC KEY-----结尾的完整字符串
如果不知道证书别名,可以先使用以下命令查看:
keytool -list -keystore [证书文件路径] -storepass [密码]
备案填写时将完整的公钥文本(包括BEGIN和END行)粘贴到备案系统的"公钥"字段。
3. APP签名MD5值(Signature MD5)
签名MD5值是签名证书的MD5指纹值,是证书的唯一标识。
方法一:DCloud后台直接查看(推荐)
-
登录DCloud开发者中心
-
进入"我的应用",选择要备案的应用
-
在左侧菜单找到"证书管理"或"云打包"
-
在证书详情页面直接复制MD5值(格式如
A0:B1:C2:...)
方法二:使用Keytool计算
keytool -list -v -keystore [证书文件路径] -alias [证书别名] -storepass [密码]
在输出结果的"证书指纹"部分,找到MD5行。
备案填写要求:
-
删除MD5值中的冒号
: -
确保字母为大写
-
最终格式为32位连续字符串(如
A0B1C2D3E4F567890A1B2C3D4E5F6071)
二、iOS APP备案信息获取方法
1. Bundle ID
Bundle ID是iOS应用程序的唯一标识符,类似安卓的包名。
获取方法:
方法一:从Apple Developer网站获取
-
登录Apple Developer网站
-
进入"Certificates, Identifiers & Profiles"
-
点击"Identifiers"
-
找到对应应用,IDENTIFIER列就是Bundle ID
方法二:从Xcode项目获取
-
打开Xcode项目
-
选择项目Target
-
在"General"标签下找到"Bundle Identifier"
2. 公钥和证书SHA-1指纹
方法一:标准证书(可直接下载)
适用情况:证书类型为可下载的标准证书
步骤:
-
登录Apple Developer网站
-
进入"Certificates, Identifiers & Profiles"
-
点击"Certificates",找到对应证书
-
下载.cer证书文件
-
在Windows上双击.cer文件
-
切换到"详细信息"标签
-
分别点击"公钥"和"指纹"查看信息
方法二:Distribution Managed证书(无法直接下载)
适用情况:证书类型为"Distribution Managed",苹果不提供直接下载
步骤:
-
访问developer.apple.com/cn/,登录开发者账号
-
在"计划资源"中点击"证书"进入证书列表页面
-
F12打开浏览器开发者工具,刷新页面
-
在"网络"标签中找到
certificates请求 -
在响应内容的
data数组中找到目标证书的attributes.certificateContent字段 -
复制该字段的完整内容,保存为
.cer文件(如test.cer) -
在Windows上双击打开该文件,查看公钥和指纹
方法三:使用OpenSSL命令行
适用情况:已有.p12或.cer证书文件
# 从.p12文件提取证书
openssl pkcs12 -in Certificate.p12 -clcerts -nokeys -out Certificate.crt
# 获取SHA-1指纹
openssl x509 -noout -fingerprint -sha1 -inform pem -in Certificate.crt
# 获取公钥并保存为PEM文件
openssl x509 -pubkey -noout -inform pem -in Certificate.crt > PublicKey.pem
方法四:使用AppUploader工具(图形化界面)
-
下载并安装AppUploader工具
-
运行工具,打开证书页面
-
导入.cer或.p12证书文件
-
工具会自动解析并显示公钥和SHA-1指纹
三、常见问题与注意事项
1. 一致性检查
-
确保获取"公钥"和"MD5签名"所使用的签名证书文件是同一个
-
确保是最终用来打包发布APP的那个证书
2. 格式要求
-
安卓公钥:完整的Base64编码字符串,包含BEGIN和END行
-
安卓MD5值:32位连续大写字母数字字符串(无冒号)
-
iOS公钥:完整的Base64编码字符串,包含BEGIN和END行
-
iOS SHA-1指纹:16进制形式,通常格式为
AA:BB:CC:...(40个字符)
本文由AI生成,其中keytool和openssl命令已经过验证。
参考文章:(3 封私信 / 80 条消息) 安卓APP备案的三要素包名,公钥,签名md5值详细获取方法-优雅草卓伊凡 - 知乎

1613

被折叠的 条评论
为什么被折叠?



