【问题标题】:Generated signed Apk successfully but when I try to Run my project, I get an error成功生成签名的 Apk,但是当我尝试运行我的项目时,出现错误
【发布时间】:2014-12-02 09:10:18
【问题描述】:

为了发布我的应用程序,我生成了签名 APK(我使用的是 Android Studio)。签名的 APK 已成功生成。对于密钥存储路径,我刚刚在 c>user>folder>name.keystore 创建了一个文件夹。我添加了别名和密码并成功生成了签名 APK。但是,当我尝试在模拟器上运行我的应用程序时,我收到以下错误:

app-release-unsigned.apk 未签名。请使用“项目结构”对话框配置所选风格的签名信息。

我错过了一个步骤吗?我做了一些谷歌搜索,发现开发人员也编辑了 gradle 文件。但是,我无法执行该步骤,主要是因为它们不清楚。这是我的 build.gradle 的样子: 应用插件:'com.android.application'

android {
compileSdkVersion 20
buildToolsVersion "20.0.0"

defaultConfig {
    applicationId "com.app.shreyabisht.aethorr"
    minSdkVersion 15
    targetSdkVersion 20
    versionCode 1
    versionName "1.0"
}
buildTypes {
    release {
        runProguard false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile "com.android.support:support-v4:20.0.+"
}

编辑:我将构建变量更改为“发布”并再次运行“生成签名的 APK”向导。向导成功运行,但运行应用程序时仍然出现相同的错误。请推荐

【问题讨论】:

  • 看看错误会很有用
  • @TheRedFox 添加了错误

标签: android eclipse gradle apk signed


【解决方案1】:

您是否检查过您的构建变体?如果要在模拟器上运行,请确保将其设置为debug,如果要生成apk,请确保将其更改为release

我自己也遇到了这个问题,然后就这样解决了。

【讨论】:

    【解决方案2】:

    您使用了错误的 APK。使用项目文件夹根目录下的 APK 文件,例如:

    app -> app.apk

    不要在build -> outputs中使用APK

    如果这不能解决您的问题(构建脚本可能会影响此问题,请参阅http://developer.android.com/sdk/installing/studio-build.html),您可以生成签名的 APK 并假设您使用的是 Android Studio(不确定 eclipse),一旦完成它应该给你一个成功的对话框。这个对话框应该有一个选项,比如“在文件夹中显示”。选择此选项可在其相关位置查看您刚刚构建的签名 APK。

    【讨论】:

    • 在我的 androistudioproject>project>app>app-release.apk 中。这是我应该使用的apk吗? @克里斯
    • 我已将信息添加到我的答案中。如果您取得任何进展或有任何问题,请告诉我。您是否尝试过 app-release.apk?它应该可以工作,你得到的错误是因为你使用的是未签名的 apk
    • 我有几个问题。 1. 正如你所建议的,我希望更改我正在签名的 apk。我怎样才能做到这一点 ? 2. 我认为问题是我签署了错误的 APK,现在我更改 APK 后,我将不得不再次去 build> Generate Signed APK,对吗? 3. 在您引用的文档中,我遇到了这个“signingConfigs { release { storeFile file("myreleasekey.keystore") storePassword "password" keyAlias "MyReleaseKey" keyPassword "password" } }" 之后我是否也需要进行这些更改我已经生成了签名的 APK?
    • 另外,当我尝试生成签名 APK 时,它会要求我提供密钥库。然后我去创建一个密钥存储路径。现在我在这里做的只是放置一个 location/path 。所以我的 androidprojects 位于 C>user>androidprojects 的文件夹中。在这个文件夹中,我已经构建了 3 个项目。我选择我正在处理的项目和 app > 并将文件“mykey.keystore”放在那里?我在 C>users>mykeyfolder 中生成了这个密钥。我应该去生成 APK 并为正确的位置(c>user>androidproject>project>app)再次执行整个过程还是我可以在这里粘贴密钥库文件?
    • 好消息是您不需要我引用的文档中所述的所有复杂性,我只是将其作为参考,以防您发现它有用。您的 gradle 脚本原样可以,不需要任何其他信息。当您想为您的应用程序签名时,您只需按照您正确说明的方式构建 > 生成签名的 APK。然后根据我的原始帖子,此 apk 应位于应用程序根文件夹中。希望有帮助!
    猜你喜欢
    • 2018-09-11
    • 2019-01-03
    • 2022-11-25
    • 1970-01-01
    • 2022-07-07
    • 1970-01-01
    • 2014-07-28
    • 2018-11-23
    • 2019-09-23
    相关资源
    最近更新 更多