release-apk 和 release-aar 的签名过程有区别吗
Posted
技术标签:
【中文标题】release-apk 和 release-aar 的签名过程有区别吗【英文标题】:Is there a difference in the signing procedure of a release-apk and release-aar 【发布时间】:2016-09-10 12:25:06 【问题描述】:我阅读了有关如何使用公钥(数字证书)对发布 apk 进行签名以及由开发人员维护私钥的详细信息。 现在我的问题是,如果我只发布一个 aar,那么同样的概念是否适用于 release-aar/debug-aar。与发布 .aar 文件所需的签名过程相同。
谢谢
【问题讨论】:
不,不是,但您通常仍希望/必须签署它。当您将库发布到 maven 存储库(例如 Bintray)时,您可以选择对您的库进行签名。 签署您的库 - 就像使用 apk 一样 - 证明它来自原始开发人员并且没有以任何方式被更改。 【参考方案1】:是的,有区别 - APK 是通过 Google Play 分发的,而 AAR 不是。两者有不同的用途和要求。提交到 Google Play 的 APK 必须经过签名。不同的 Maven 服务器/存储库有不同的要求。上传到 Maven Central 的 Artifact 必须签名,而如果你部署自己的 Maven 服务器,当然不需要这样的要求。
如果您希望签署您的 aar,您可能需要查看 Gradle 签名插件:https://docs.gradle.org/current/userguide/signing_plugin.html
【讨论】:
谢谢,一个后续问题。我正在开发一个客户最终将使用并与他们的应用程序(apk)集成的 aar。在这种情况下,理想情况下我发布的 aar 是否应该签名? 这不会对他们的最终 APK 产生影响。但是,最好对其进行签名,以便客户/客户可以验证 AAR 确实来自您,而不是其他人。以上是关于release-apk 和 release-aar 的签名过程有区别吗的主要内容,如果未能解决你的问题,请参考以下文章
Flutter 应用程序在构建 release-APK 时工作,但在通过 Google Play 商店提供时不工作
在普通系统中以 react-native 为 ios 创建发布应用程序