2017-10-28 183 views
3

由于更新到Android Studio 3.0 gradle 4.1我正面临此问题。通过Gradle自动签名的APK无法安装,因为AS 3.0(gradle 4.1)

如果我使用Build &创建apk运行,然后将此apk(路径app/build/outputs/apk/...)上传到设备并尝试安装它(它是干净的安装应用程序不在设备上)我收到“应用程序未安装”错误。

gradle设置片段:

signingConfigs { 

     release { 
      storeFile file("../path_to_keystore/keystore.jks") 
      storePassword "mypass" 
      keyAlias "myAlias" 
      keyPassword "mypass" 
     } 
    } 

buildTypes { 
     release { 
      minifyEnabled true 
      signingConfig signingConfigs.release 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 

     debug { 
      versionNameSuffix "-debug" 
     } 
    } 

如果我注册通过APK签署了产生APK向导,APK安装。构建和运行方法在以前的Android Studio版本中工作。

任何人都面临同样的问题?并知道如何通过Gradle修复自动签名?

一些额外的信息:

  • 即时运行通过构建&被禁用
  • 构建润曾与调试和发布配置
  • 构建和运行的版本上传,并通过AS
  • 对设备正确安装

回答

5

昨天我遇到了这个。 Run的输出不再可以通过Android Studio以外的方式直接安装,显然。 Android Studio自动添加android:testOnly="true" to the <application> element in the manifest。尽管有文档记录,但这个APK无法通过Android Studio以外的其他任何方式进行安装—我特意试图通过adb进行安装并且失败。

运行assembleRelease任务会为您提供一个APK,您可以使用该工具,就像在工作室向导中一样。