📌  相关文章
📜  如何检查 android 应用程序是否已签名 (1)

📅  最后修改于: 2023-12-03 15:24:49.717000             🧑  作者: Mango

如何检查 Android 应用程序是否已签名

在 Android 中,使用数字签名是确保应用程序的安全性的重要方式。因此,在发布应用程序之前,需要对其进行签名。但是,有时您可能需要检查应用程序是否已签名。本文将介绍如何在 Android 上检查应用程序是否已签名。

1. 查看应用程序的 APK 文件是否已签名

每个应用程序都有一个 APK 文件,您可以通过查看该文件来确定应用程序是否已签名。您可以使用以下命令检查 APK 文件是否已签名:

jarsigner -verify -verbose -certs your_app.apk

如果该应用程序已经签名,则您将看到以下输出:

smk:
    Signed by "CN=Android Debug, O=Android, C=US"
    Digest algorithm: SHA-256
    Signature algorithm: SHA256withRSA, 2048-bit key
    X.509, CN=Android Debug, O=Android, C=US
    [certificate is valid from 1/1/70 12:00 AM to 1/1/50 12:00 AM]
    [CertPath not validated: Path does not chain with any of the trusted
     certificates]

否则,您将看到以下输出:

jarsigner: Certificate chain not found for: your_app.apk.  your_app.apk must reference a valid KeyStore key entry containing a private key and corresponding public key certificate chain.
2. 在 Android Studio 中查看应用程序是否已签名

您也可以通过 Android Studio 中的 Build Variants 视图查看应用程序是否已签名。只需单击 Gradle 选项卡,然后展开模块并单击 buildType,即可查看签名信息。

此外,您还可以使用 Android Studio 中的 Gradle 命令行工具来检查应用程序是否已签名。只需打开 Gradle 命令行工具,然后运行以下命令:

./gradlew signingReport

如果您看到以下输出,则说明该应用程序已经成功签名:

Variant: debug
Config: debug
Store: /path/to/debug.keystore
Alias: AndroidDebugKey
MD5: 11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11
SHA1: 22:22:22:22:22:22:22:22:22:22:22:22:22:22:22:22:22:22:22:22
SHA-256: 33:33:33:33:33:33:33:33:33:33:33:33:33:33:33:33:

如果您看到以下输出,则说明应用程序还没有签名:

Variant: debug
Config: debug
No signing config defined.