ChatGPT解决这个技术问题 Extra ChatGPT

生成签名的apk android studio

我是 android 开发的新手,刚刚完成了我的第一个应用程序。我想在 android studio 中生成一个签名的 apk。我阅读了开发人员文档,但无法理解这些步骤。当我点击 Build>Generate Signed APK... 时,它会显示一个对话框,询问以下内容:

Keystore path  //with two options create new and choose existing
Keystore password
Key alias
key password

即使在谷歌搜索之后我也没有得到什么是密钥库。当我选择 create new 时,它要求我选择一个路径并找到我没有的 .jks 文件!谁能解释并列出生成签名apk的步骤。


J
Jackspicer

我认为没有人正确回答了这个问题。所以,对于有同样问题的其他人,这应该会有所帮助:

第 1 步转到 Build>Generate Signed APK>Next(选择的模块将是您的模块,通常称为“app”)

第二步点击新建

第 3 步 基本上,用所需的详细信息填写表格。令人困惑的一点是它要求密钥存储路径。单击右侧带有 3 个点(“...”)的图标,这将打开一个导航器窗口,要求您导航并选择一个 .jks 文件。导航到要保存密钥库文件的文件夹,然后在该窗口底部的“文件名”框中,只需输入您喜欢的名称,即可单击“确定”按钮。正在发生的事情是,窗口并没有真正要求您选择 .jks 文件,而是希望您为其提供您希望它拥有的位置和名称。

第 4 步单击下一步,然后选择发布和瞧!你完成了。


文件保存在哪里?谢谢
我只是在写 here,在“构建”下没有“生成签名的 APK”。
V
VJ Vélan Solutions

使用 Keytool 二进制或 exe 生成私有密钥库。 Instructions here。然后,您可以使用此密钥库为您的应用程序签名。安装 Java 时会安装 Keytool。

注意:保存/备份此密钥库,因为一旦您通过使用此密钥库对其进行签名来发布应用程序,您将不得不使用相同的密钥库进行任何未来的更新。所以,备份它很重要。

HTH。


我认为这里的问题有所不同,用户对如何选择 .jks 文件感到困惑,这只是名称。正确答案是下面的@jackspier
C
Community

在这里阅读我的答案

How do I export a project in the Android studio?

这将指导您逐步生成签名的 APK 以及如何从 Android Studio 创建密钥库文件。

从链接中,您可以轻松完成,因为我逐步添加了它的屏幕截图。

简短的回答

如果你有密钥库文件,那么你可以简单地做同样的事情。

转到 Build 然后单击 Generate Signed APK


S
SMR

解释了 Google 推荐的配置 build.gradle 文件的“官方”方式here

基本上,您添加一个signingConfig,在其中指定密钥库的密码位置。然后,在发布构建类型中,参考该签名配置。

...
android {
    ...
    defaultConfig { ... }
    signingConfigs {
        release {
            storeFile file("myreleasekey.keystore")
            storePassword "password"
            keyAlias "MyReleaseKey"
            keyPassword "password"
        }
    }
    buildTypes {
        release {
            ...
            signingConfig signingConfigs.release
        }
    }
}
...

T
Tony Baby

在 Android Studio 中转到 Build -> Generate Signed APK。在出现的新窗口中,单击 Create new... 按钮。接下来输入如下所示的详细信息,然后单击 OK -> Next。选择构建类型作为发布,然后单击完成按钮。等待直到显示 APK 生成成功消息,如下图所示。单击在资源管理器中显示以查看签名的 APK 文件。

有关详细信息,请访问 this 链接。


M
Mohammad Zaid Pathan

简单的 5 个视觉步骤:

第 1 步:点击 Build -> Generate Signed Build/APK

https://i.stack.imgur.com/k8Elg.png

https://i.stack.imgur.com/Rdb03.png

https://i.stack.imgur.com/EUlP0.png

https://i.stack.imgur.com/xUWXX.png

⚠️ 重要提示:请务必安全存储此密钥库文件,因为连续上传存储库需要相同的密钥库文件。

https://i.stack.imgur.com/IKeOF.png

一切都完成了,现在您的签名 APK 将开始构建,并且一旦可用,应该会在右下角弹出。点击 locate 以获取您签名的 APK 文件。

简单的?


c
cubeloid

我有同样的问题。我用教程中的 /home/tim/android.jks 文件填充了该字段,认为该文件将被创建。当我点击输入时,它会说找不到文件。但是当我尝试创建文件时,它不会让我创建 jks 文件。我关闭了 android studio 并再次运行它,它工作正常。我必须点击 ... 才能正确添加我的文件。生成签名的apk向导->新密钥库->点击...选择密钥库文件。输入文件名我在想我将不得不使用 openjdk 并创建自己的密钥文件,但它内置于 android studio


T
Thiago

您可以将其添加到您的构建等级中

android {
    ...
    defaultConfig { ... }
    signingConfigs {
        release {
            storeFile file("my.keystore")
            storePassword "password"
            keyAlias "MyReleaseKey"
            keyPassword "password"
        }
    }
    buildTypes {
        release {
            ...
            signingConfig signingConfigs.release
        }
    }
}

如果你然后需要一个 keyHash 通过项目根文件夹上的 android stdio 终端执行这样的操作

keytool -exportcert -alias my.keystore -keystore app/my.keystore.jks | openssl sha1 -binary | openssl base64

i
illusionist

注意:如果它是一个 React Native 项目

如果您在 Android Studio 中打开根项目文件夹,您将不会在此页面的其他答案中看到建议的选项。

https://i.stack.imgur.com/61Dtw.png

解决方案

我打开的是 packages/native/android 文件夹,而不是根文件夹。然后只有我可以看到构建签名 APK 的选项。

https://i.stack.imgur.com/k8Elg.png


K
Karl Johan Vallner

手头的官方 Android 文档,其中包含有关如何在 Android Studio 中生成签名的 APK 密钥甚至如何在 Gradle 构建中设置自动 APK 密钥生成的分步指南。

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

查看章节:签署您的发布版本


S
Sandeep Dixit

对话框在询问密钥存储路径时会有些混乱。但这实际上是它将创建 Keystore 的地方。标签可以是“将密钥存储在:”

内联评论。

https://i.stack.imgur.com/yGxNO.png

但是,您可以向同一个 Keystore 添加多个密钥。在这种情况下,您还可以选择现有的 Keystore。

请注意,Google Playstore 在首次发布后很难更改签名密钥。因此,请确保选择一个安全且易于记忆的位置。在某处记下位置和密码详细信息。