java - 发布/调试 APK 上是否提供签名配置信息

标签 java android android-studio android-signing

我未能在 Google 上找到答案,并且我担心我的 keyPassword、storePassword 以及 build.gradle(Module:app) 上清晰可见的其他信息。

我已浏览以下文档链接,但不相信:

https://developer.android.com/studio/publish/app-signing.html

它指出:

Because the debug certificate is created by the build tools and is insecure by design, most app stores (including the Google Play Store) will not accept an APK signed with a debug certificate for publishing.

这是否意味着任何找到我的调试应用程序(直接从 Android Studio 安装)的人都能够找到我的签名信息,例如 keyPassword 和 storePassword?

我很感激对此事的任何想法。

最佳答案

不,keyPassword 和 storePassword 不包含在最终的构建 Artifact 中。

它们属于构建脚本,不属于应用程序源代码的一部分。

调试证书在设计上是不安全的,因为它是自动生成的。如果您包含自己的签名配置(用于发布版本)并在 Debug模式下构建应用程序,则构建过程甚至不会使用自定义发布签名配置。

这可能有助于理解构建代码和源代码之间的区别:What is Gradle in Android Studio?

TLDR:不, key 和存储密码永远不会出现在最终包中。

关于java - 发布/调试 APK 上是否提供签名配置信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40956056/

相关文章:

java - 验证 Java LocalDate 是否与 yyyy-MM-dd 格式与可读消息匹配

java - 如何删除日期(dd/mm/yyyy)中的年份(yyyy)

android - 连接到特定的蓝牙配对设备

java - 如何在 getActivity 变为 null 时终止线程

android - 是否有 “Could not determine artifacts for (library from Jitpack)”的gradle修复程序?

Java - 如果语句 A 等于 B 加减 2

java - 当类具有多个不同的字段时,如何对其进行泛化?

java - 如何获取包含城市的时区列表?

Android - 使用 DOM 解析器的 KML 解析器

Android 4.3 低功耗蓝牙不稳定