我在github上下载了一个Android应用程序的zip文件,我试图运行它,但我得到了一个带有此消息的对话框

app-release-unsigned.apk is not signed. Please configure the signing information for the selected flavor using the Project Structure dialog.

我使用Android Studio。 我该怎么办?


当前回答

如果有人想使用Android Studio调试发布版本,请遵循以下步骤:

将构建变体设置为发布模式。

右键单击左侧导航窗格中的应用程序,单击打开模块设置。 进入签名标签。添加签名配置并填写信息。选择你的钥匙链。

转到构建类型选项卡。选择释放模式并设置:

-可调试为true。

-将Config签名到Config。(你刚创建的那个)。

同步你的gradle。享受吧!

其他回答

我成功地调试了签名的APK,遵循这个过程:-

在“Build Variant”工具栏中选择“release”版本 在构建中。Gradle为模块设置debuggable true为发布构建类型 去文件->项目结构->签名选项卡下填写所有信息->风味下 tab->选择刚刚创建的签名配置 设置断点 在调试模式下运行应用程序

确保构建变量在Android Studio中被设置为调试(而不是发布)(检查构建变量面板)。

如果设置为调试,它应该自动使用自动生成的调试密钥库对应用程序进行签名,而不需要编辑构建脚本。

但是,您将需要创建和配置一个特定的密钥存储库来发布。

官方文档,包括调试和发布模式:https://developer.android.com/tools/publishing/app-signing.html

我的解决方案是将签名配置的名称从默认的“config”更改为“debug”。为了验证,我将其更改为其他一些随机名称并再次得到错误,然后将其更改为“调试”,错误就消失了。所以,虽然这看起来是人为的,我倾向于不相信这是全部的故事,尝试一下这个解决方案。

用于gradle Kotlin dsl

signingConfigs {
    create("releaseConfig") {
        storeFile = file("your keystore file path")
        storePassword = "storePassword"
        keyAlias = "keyAlias"
        keyPassword = "keyPassword"
    }
}
buildTypes {
    getByName("release") {
        signingConfig = signingConfigs.getByName("releaseConfig")
        isMinifyEnabled = true
        isShrinkResources = true
        proguardFiles(getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro")
    }
}

您下载的应用程序项目可能在build.gradle文件中包含已签名的信息。如果你看到这样的代码:

buildTypes {
    debug {
        signingConfig signingConfigs.release
    }
    release {
        signingConfig signingConfigs.release
    }
}

您可以删除它们,然后重试。