Android Studio安装失败,APK未签名

时间:2013-10-26 22:35:40

标签: android gradle

最近从Eclipse更改为Android Studio,我也将JDK从java-open-jdk更改为jdk1.7.0_45

现在我正在尝试运行我的第一个应用程序并收到此消息:

Installation failed since the APK was either not signed, or signed incorrectly.
If this is a Gradle-based project, then make sure the signing configuration 
is specified in the Gradle build script

修改:

当我从Android Studio运行时,我收到上面显示的错误。当我从命令行运行它时,我没有收到错误(应用程序正在运行,我收到错误但与gradle无关)。

我从here

获得了代码

您可以在google repo

处查看build.gradle

更新2:

我添加了此代码

signingConfigs {
    release {
        storeFile file("john.keystore")
        storePassword "john"
        keyAlias "johnkeystore"
        keyPassword "john"
    }
}

位于build.gradle文件中buildTypes代码块的正上方。 文件john.keystore位于我的Project的根目录下。我正在运行gradlew assembleRelease而我正在xxx-release-unsigned.apk

8 个答案:

答案 0 :(得分:19)

如果您确实使用gradle运行构建,则需要配置signingConfigs。 Android可以自动配置您的debug signingConfig。您可以通过下一种方式发布signingConfig

android {

    signingConfigs {

        release {

            storeFile file('android.keystore')
            storePassword "pwd"
            keyAlias "alias"
            keyPassword "pwd"
        }
    }

    buildTypes {

       release {

           signingConfig signingConfigs.release
       }
    }
}

在此处查看有关此主题的说明:http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Signing-Configurations

如果您仍然遇到问题,请使用build.gradle更新问题。最有可能的问题是在这里。我正在使用JDK 1.7并且gradle构建工作正常。

答案 1 :(得分:7)

我遇到了同样的问题,我去了Build-> Clean Project并重新执行该项目并且它有效。

答案 2 :(得分:0)

我一直在使用Android Studio esp挣扎一段时间。 gradle和build variants。

我已根据定义的构建类型更改此内容:

debug
release

答案 3 :(得分:0)

当我遇到同样的问题(在开发和运行测试时),我去了Build -> Rebuild Project,然后重新启动了模拟器。这对我有用。

答案 4 :(得分:0)

即使在从手机上卸载应用程序后,我也无法部署它,这些答案对我都没有用。有用的是在不同的设备上安装应用程序,然后当我尝试在以前的设备上部署它时,它奇迹般地起作用。

答案 5 :(得分:0)

如果您的目标不是为应用程序创建自定义构建,则可能需要从测试设备清除有关它的所有数据,以防您使用模拟器只擦除设备中的所有数据。转到 - > Tools - > Android - > AVD Manager - > [你要擦的设备](在动作标签中) - > Wipe Data

enter image description here

如果是实际设备,只需卸载应用程序和所有相关数据。

原因是未签名的APK有签名,因此设备会看到您尝试安装的内容与此处生成的包名不同。

希望这可以节省你一些时间。

答案 6 :(得分:0)

如果您的设备有多个用户,则在安装已签名的APK之前,请检查是否未为其他用户安装相同的应用。如果它在那里删除它。

对我而言,这是拒绝安装签名APK的根本原因。

答案 7 :(得分:0)

刚建立 - >重建项目,然后重新启动模拟器。这对我有用。