Я пытаюсь создать APK для своего проекта Android в командной строке. Я бегаю

./gradlew clean assembleProductionDebug

Результат, который я получаю:

:app:processProductionDebugManifest
:app:processProductionDebugResources
:app:generateProductionDebugSources
:app:compileProductionDebugJava
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
:app:preDexProductionDebug
:app:dexProductionDebug
:app:processProductionDebugJavaRes UP-TO-DATE
:app:validateDebugSigning
:app:packageProductionDebug
:app:zipalignProductionDebug
:app:assembleProductionDebug

BUILD SUCCESSFUL

Total time: 2 mins 29.574 secs

Однако моя папка сборки / вывода пуста. То же самое происходит, когда я запускаю ./gradlew assembly

Единственное, что я мог найти, это потенциально https : //gradle.org/docs/current/dsl/org.gradle.language.assembler.tasks.Assemble.html но как мне указать objectFileDir в build.gradle?

Примечание: бег

./gradlew clean installProductionDebug

Успешно устанавливает APK на моем устройстве.

Соответствующий build.gradle:

apply plugin: 'com.android.application'
apply plugin: 'git-dependencies'
apply plugin: 'testfairy'
apply plugin: 'org.robolectric'


android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "com.test.androidas"
        minSdkVersion 15
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }

    signingConfigs {
        release {
             storeFile file("as.keystore")
             storePassword "***"
             keyAlias "as"
             keyPassword "***"
        }
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.release
        }
    }


    productFlavors {
        production {
            applicationId "com.antsquare.test"
            versionCode 1
        }

        staging {
            applicationId "com.antsquare.test.staging"
            versionCode 1
        }
    }

    packagingOptions {
        exclude 'META-INF/DEPENDENCIES.txt'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/notice.txt'
        exclude 'META-INF/license.txt'
        exclude 'META-INF/dependencies.txt'
        exclude 'META-INF/LGPL2.1'
    }

    testfairyConfig {
        apiKey '***'
        video "wifi"
        notify true
        testersGroups "ME"
        autoUpdate true
        videoQuality "low"
        videoRate "0.5"
    }
}
4
recipherus 11 Мар 2015 в 21:48

2 ответа

Лучший ответ

Сначала добавьте

android { 

     compileSdkVersion 21
     buildToolsVersion "21.1.2"

     ...

     lintOptions { 
         abortOnError false 
     } 
}

В вашем build.gradle в модуле app.

После этого очистите свой проект с помощью ./gradlew task clean и после этого вызова ./gradlew task build --debug | grep .apk из консоли вы увидите место apk

3
Konrad Krakowiak 11 Мар 2015 в 19:10

В Android Studio

Если сборка прошла успешно, но не генерирует

.apk

Файл, а не запускающий эмулятор.

Решение : убедитесь, что раскрывающееся меню под сборкой в меню или раскрывающееся меню слева от выполнения выбрано " приложение ", то при запуске или отладке

.apk

Будет сгенерирован файл и запустится эмулятор.

1
aashish 16 Июл 2017 в 14:09