当前位置: 首页 > 知识库问答 >
问题:

Android Studio 0.8.6 更改默认构建变体

林项明
2023-03-14

我最近将Android Studio从0.6更新到0.8.6,似乎指定默认“运行”配置的功能已被删除(或者移动到我需要帮助的位置)。我能够在调试或发布模式下生成签名的APK(生成向导已更改为允许我此时选择构建变体),但似乎无法找到如何选择构建变体以供常规使用。换句话说,当我单击“运行”gradle执行assemblyrele时,我需要运行assembledebug。关于如何改变这一点的任何想法?

编辑:当我选择“调试”而不是“运行”时,gradle仍然选择运行<code>AssemblerEase</code>,所以我得到了这个错误

Cannot debug application com.caseybrooks.scripturememory on device lge-vs985_4g-VS9854Gc824b3f1.
This application does not have the debuggable attribute enabled in its manifest.
If you have manually set it in the manifest, then remove it and let the IDE automatically assign it.
If you are using Gradle, make sure that your current variant is debuggable.

但是,如果我将 debuggable=“true” 属性添加到我的清单中,则生成会失败。我的 build.gradle 是否正确?

apply plugin: 'android'

android {
compileSdkVersion 19
buildToolsVersion '19.1.0'
defaultConfig {
    minSdkVersion 8
    targetSdkVersion 19
}
signingConfigs {
    release {
        storeFile file('C:/Users/Casey/Documents/android/scripturememory/scripturememory_keystore')
        keyAlias 'scripturememory_keystore'
        storePassword '***********'
        keyPassword '**********'
    }
}
buildTypes {
    release {
        runProguard false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        signingConfig signingConfigs.release
    }
}
productFlavors {
}
sourceSets {
    main {
        java.srcDirs = ['src/main/java']
    }
}
}

dependencies {
compile project(':library')
compile project(':AndroidBibleTools')
compile 'com.android.support:appcompat-v7:19.+'
}

共有2个答案

邢博涛
2023-03-14

尝试将其用于您的gradle构建文件。我通常会在gradle文件中设置可调试标志,而不是清单。

 buildscript {
        repositories {
            mavenCentral()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:0.12.2'
        }
    }

    apply plugin: 'com.android.application'

    repositories {
        mavenCentral()
    }

    android {
    compileSdkVersion 19
    buildToolsVersion '19.1.0'
    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 19
    }   
     packagingOptions {
            exclude 'META-INF/DEPENDENCIES'
            exclude 'META-INF/LICENSE'
            exclude 'META-INF/NOTICE'
            exclude 'META-INF/ASL2.0'
        }
    signingConfigs {
        release {
            storeFile file('C:/Users/Casey/Documents/android/scripturememory/scripturememory_keystore')
            keyAlias 'scripturememory_keystore'
            storePassword '***********'
            keyPassword '**********'
        }
    }
        buildTypes {
            debug {
                applicationIdSuffix '.dev'
                debuggable true
                jniDebugBuild true
                runProguard false
            }
            beta {
                applicationIdSuffix '.beta'
                debuggable true
                jniDebugBuild true
                runProguard false
            }
            release {
                debuggable false
                jniDebugBuild false
                runProguard false
                signingConfig signingConfigs.release
            }
        }
    sourceSets {
        main {
            java.srcDirs = ['src/main/java']
        }
    }
    }

    dependencies {
    compile project(':library')
    compile project(':AndroidBibleTools')
    compile 'com.android.support:appcompat-v7:19.+'
    }
酆高翰
2023-03-14

视图菜单

 类似资料:
  • 问题内容: 我正在使用Jenkins的 “扩展选择参数” 插件,并希望安排构建定期运行而无需人工干预。 从下拉列表中选择构建的参数。 该参数的下拉列表是通过外部脚本生成的,我一直想选择最高的值作为默认值。 有没有办法选择最上面的元素作为计划作业的默认值? 我阅读了一些使用url远程运行作业的方法,但我希望可以通过仅更改作业配置来实现此目的,从而不必为它管理单独的脚本。 我的Jenkins实例在Li

  • 问题内容: 然后,我想更改用户的默认架构(用户为) 我这样做:( 查询成功返回,但没有结果)。 当我尝试给出错误 虽然效果很好。 尝试为用户更改默认架构有什么问题? 问题答案: 我认为您需要重新登录。随着 你改变 运行时配置变量的会话默认值 同样来自 手册: 特定于角色的变量设置仅在登录时生效; 但是不要将更改应用于当前会话。如果要立即更改,请使用: 它将在会话级别更改路径

  • 我有一个配置了多种变体和风格的项目: 每当我从另一个项目(因此启动Android Studio)打开该项目时,它默认选择变量。通常我会先构建这个,然后意识到我使用了错误的变体。 有没有办法告诉Android Studio默认为一个变体,比如说? 技术:Android Studio 3.1.4、Gradle wrapper 4.4、Android Gradle 3.1.4。

  • 问题内容: 我正在使用weblogic和oracle对Web应用程序进行编程。数据源是通过JNDI配置的,具有受限制的数据库用户,该用户可以DML到表中,但不能DDL。您可能会猜到,该用户不是这些表的所有者,但已授予该用户访问权限。 假设他是GUEST_USER 该应用程序正在使用JPA + EclipseLink,并且已经定义了许多实体。我不想在每个实体类中都写入要更改架构的属性。我已经尝试过使

  • 我们有一个带有设置的多项目。渐变和无构建。根项目中的gradle。 gradle的默认行为是查找顶部目录上的settings.gradle文件并读取之前定义的每个项目的build.gradle。 我的问题是:根据签出多项目的环境,当从根项目运行构建时,我希望以默认的“build2.gradle”而不是“build.gradle”运行。 最好的方法是什么?? 谢啦

  • 我为我的产品定义了一系列的产品风格。然而,在一些场景中,我希望构建没有味道的场景。 然而,当我试图建立一个没有味道的版本,即 它通过并构建所有的变体,这需要很长的时间。我想启动一个发布版本构建并忽略所有的味道。这可能吗? 我确信我可以添加一个名为“默认”的空味道,并构建它。似乎我不应该这样做。 编辑: 目前的答案似乎是提供自己的“默认”风格