Onde o Android Studio está criando meu arquivo .apk?

103

Eu tenho reconstruído meu projeto do zero, então houve muitos problemas com ele. No momento, tudo está funcionando bem, exceto que, quando tento executar o aplicativo, recebo a mensagem 'Caminho local não existe'. , onde o caminho local está apontando para o caminho: AndroidStudioProjects \ MyProject \ MyProject .. \ build \ production \ MyProject.apk , e é verdade que não há nenhum arquivo .apk nesse local, ou mesmo em qualquer outro lugar no sistema de arquivos do projeto.

No entanto, posso construir o aplicativo sem problemas e, ao executar o gradlew packageDebug, recebo a mensagem ' construção bem-sucedida ', portanto .apks devem ser gerados. Minha pergunta é: para onde estão indo ou, se não estão sendo gerados, por que não?

Onde está o caminho de construção de cada conjunto de módulos? Estou um pouco confuso porque a Estrutura do Projeto-> Facetas-> Android-> Configurações do Compilador, Estrutura do Projeto-> Módulos-> Caminhos-> Saída do Compilador, build.gradle e MyProject.iml parecem ter algo a ver com o construir o caminho, mas não entendo muito bem como eles se relacionam

editar: Eu sei onde deveria estar , mas não está lá, então eu quero saber como alterar o caminho de construção

edição 2: por alguma razão, executar gradlew build cria .apks, mas não compila ou executa de dentro do programa

edição 3: aqui está minha saída de compilação do gradlew, observe que ela é compilada com sucesso:

Creating properties on demand (a.k.a. dynamic properties) has been deprecated and is scheduled to be removed in Gradle 2.0. Please read http://gradle.org/docs/current/dsl/org.gradle.api.plugins.ExtraPropertiesExtension.html for information on the replacement for dynamic properties.
Deprecated dynamic property: "target" on "com.android.build.gradle.LibraryExtension_Decorated@9e9aabc", value: "android-16".
:TwoWayLib:mergeReleaseProguardFiles UP-TO-DATE
:TwoWayLib:packageReleaseAidl UP-TO-DATE
:TwoWayLib:prepareReleaseDependencies
:TwoWayLib:compileReleaseAidl UP-TO-DATE
:TwoWayLib:generateReleaseBuildConfig UP-TO-DATE
:TwoWayLib:mergeReleaseAssets UP-TO-DATE
:TwoWayLib:compileReleaseRenderscript UP-TO-DATE
:TwoWayLib:mergeReleaseResources UP-TO-DATE
:TwoWayLib:processReleaseManifest UP-TO-DATE
:TwoWayLib:processReleaseResources UP-TO-DATE
:TwoWayLib:compileRelease UP-TO-DATE
:TwoWayLib:processReleaseJavaRes UP-TO-DATE
:TwoWayLib:packageReleaseJar UP-TO-DATE
:TwoWayLib:packageReleaseLocalJar UP-TO-DATE
:TwoWayLib:packageReleaseRenderscript UP-TO-DATE
:TwoWayLib:bundleRelease UP-TO-DATE
:Rogue:prepareRogueProjectTwoWayLibUnspecifiedLibrary UP-TO-DATE
:Rogue:prepareDebugDependencies
:Rogue:compileDebugAidl UP-TO-DATE
:Rogue:generateDebugBuildConfig UP-TO-DATE
:Rogue:mergeDebugAssets UP-TO-DATE
:Rogue:compileDebugRenderscript UP-TO-DATE
:Rogue:mergeDebugResources UP-TO-DATE
:Rogue:processDebugManifest UP-TO-DATE
:Rogue:processDebugResources UP-TO-DATE
:Rogue:compileDebug UP-TO-DATE
:Rogue:dexDebug UP-TO-DATE
:Rogue:processDebugJavaRes UP-TO-DATE
:Rogue:validateDebugSigning
:Rogue:packageDebug
:Rogue:assembleDebug
:Rogue:prepareReleaseDependencies
:Rogue:compileReleaseAidl UP-TO-DATE
:Rogue:generateReleaseBuildConfig UP-TO-DATE
:Rogue:mergeReleaseAssets UP-TO-DATE
:Rogue:compileReleaseRenderscript UP-TO-DATE
:Rogue:mergeReleaseResources UP-TO-DATE
:Rogue:processReleaseManifest UP-TO-DATE
:Rogue:processReleaseResources UP-TO-DATE
:Rogue:compileRelease UP-TO-DATE
:Rogue:dexRelease UP-TO-DATE
:Rogue:processReleaseJavaRes UP-TO-DATE
:Rogue:packageRelease
:Rogue:assembleRelease
:Rogue:assemble
:Rogue:check UP-TO-DATE
:Rogue:build
:TwoWayLib:mergeDebugProguardFiles UP-TO-DATE
:TwoWayLib:packageDebugAidl UP-TO-DATE
:TwoWayLib:prepareDebugDependencies
:TwoWayLib:compileDebugAidl UP-TO-DATE
:TwoWayLib:generateDebugBuildConfig UP-TO-DATE
:TwoWayLib:mergeDebugAssets UP-TO-DATE
:TwoWayLib:compileDebugRenderscript UP-TO-DATE
:TwoWayLib:mergeDebugResources UP-TO-DATE
:TwoWayLib:processDebugManifest UP-TO-DATE
:TwoWayLib:processDebugResources UP-TO-DATE
:TwoWayLib:compileDebug UP-TO-DATE
:TwoWayLib:processDebugJavaRes UP-TO-DATE
:TwoWayLib:packageDebugJar UP-TO-DATE
:TwoWayLib:packageDebugLocalJar UP-TO-DATE
:TwoWayLib:packageDebugRenderscript UP-TO-DATE
:TwoWayLib:bundleDebug UP-TO-DATE
:TwoWayLib:assembleDebug UP-TO-DATE
:TwoWayLib:assembleRelease UP-TO-DATE
:TwoWayLib:assemble UP-TO-DATE
:TwoWayLib:check UP-TO-DATE
:TwoWayLib:build UP-TO-DATE

BUILD SUCCESSFUL

Total time: 10.848 secs
Migwell
fonte
1
possível duplicata da localização
Gru
deve estar lá conforme explicado por Alex ou então você pode verificar a resposta acima.
Gru
O meu foi em ./app/release/app-release.apk
Steve Smith

Respostas:

155

YourApplication \ app \ build \ outputs \ apk

Mehdi Boukhechba
fonte
1
Este é o novo local.
Krylez
Obrigado - Encontrei-o lá para o Android Studios 1.1
Simon,
8
não há nenhuma pasta de app no ​​inferno
Shahid Karimi
na versão mais recente, está em YourApplication \ app \ build \ outputs \ apk * .apk
Teerakiat Chitawattanarat
1
Em janeiro de 20:YourApplication/android/app/build/outputs/apk/release/app-release.apk
Ben Pritchard
23

Acesse o arquivo de projetos do AndroidStudio

  1. Selecione o nome do projeto,
  2. Selecione o aplicativo
  3. Selecione a construção
  4. Selecione as saídas
  5. Selecione Apk

Você encontrará arquivos APK do aplicativo aqui, se você executou o aplicativo em AVD ou mesmo em um dispositivo de hardware

Manan Gupta
fonte
Estranho, estou usando o Android Studio 3.2, no diretório de construção como você mencionou, só existe o intermediatesdiretório, o Outputsestá faltando.
Allan Ruin
@AllanRuin você construiu o APK?
kelalaka
por favor, seja elaborado com as etapas que você mencionou.
Shubham Arya
19

Depois de compilar codeno Android Studio, encontrei-o aqui:

~ \ MyApp_Name \ app \ build \ outputs \ apk \ app-debug.apk

Arsman Ahmad
fonte
17

Você deve construir seu aplicativo em vez do processo de depuração. Basta seguir isto:

Build -> Build Bundles/APK(s) -> Build APK(s)

insira a descrição da imagem aqui

Sajid Khan
fonte
11

Eu estava tendo problemas para encontrar meu apk de depuração. O Android Studio 0.8.6 não mostrava o apk ou mesmo a pasta de saída em project / project / build /. Quando verifiquei o mesmo caminho projeto / projeto / construção / do explorador de pastas do Windows, encontrei a pasta "output" lá e o apk de depuração dentro dela.

roshan213
fonte
O Explorer trava bastante se você tiver este local aberto e 'limpar projeto' =)
Tapirboy
Não acredito que perdi tanto tempo só porque me esqueci disso só porque o Android Studio nem sempre mostra todos os diretórios ...
Jon McClung
9

Para Android Studio:

Se você não criou o APK pelo menos uma vez, talvez não encontre a pasta / Outputs / APK. Vá para Build no Android Studio e uma das três últimas opções é Build APK, selecione-o. Em seguida, ele criará essa pasta e você encontrará seu arquivo APK lá.

Jonathan
fonte
Todas as opções acima não funcionaram para mim e esta sim. Depois Build APK, também aparecerá uma caixa de diálogo informando sobre o locateseu apk, que conveniente!
Ng Sek Long
5

Quando o Gradle cria seu projeto, ele coloca todos os APKs no diretório de compilação / apk. Você também pode simplesmente executar um comando find recursivo simples para * .apk no diretório de nível superior do seu projeto.

Aqui está uma descrição melhor ...

http://i.stack.imgur.com/XwjEZ.png

Veja a imagem completa em http://i.stack.imgur.com/XwjEZ.png

Alex Fu
fonte
Onde esse diretório está definido? Porque não consigo encontrar nenhum arquivo apk em nenhum lugar do meu projeto de arquivo
Migwell
Como na minha edição - eu sei onde deveria estar , mas não está lá, então talvez o caminho de saída esteja quebrado de alguma forma?
Migwell
Eu adicionei. A única coisa duvidosa é que minha biblioteca TwoWayLib parece estar construindo duas vezes. Isso não explica por que o Android Studio não pode construir apks
Migwell
Eu também tenho o mesmo problema - nem o Gradle nem o Android Studio realmente criam um arquivo apk.
Richard Russell
5

O apk do meu aplicativo estava neste local

C: \ Users \ haseeb_mir \ AndroidStudioProjects \ MyTestApp \ app \ build \ outputs \ apk \ debug

HaseeB Mir
fonte
3

no android 3.1.0 acima, use o caminho abaixo para encontrar a versão assinada do APK

home/AndroidStudioProjects/<projedct name>/app/app-release.apk

e no windows

AndroidStudioProjects\{project name}\app\release\app-release.apk
giveJob
fonte
2

No meu caso, para obter minha compilação de depuração - tenho que desligar a opção Instant Run:

Arquivo → Configurações → Compilar, Execução, Implementação → Instant Run e desmarque Habilitar Instant Run.

Depois de executar o projeto - encontrei minha compilação no diretório Application \ app \ build \ outputs \ appDebug \ apk

Fvolodimir
fonte
0

Dê uma olhada nesta questão .

TL; DR: limpe e depois crie.

./gradlew clean packageDebug 
Alikonda
fonte
1
Problema semelhante, mas no meu caso a execução desse comando faz com que ele seja compilado uma vez, mas ainda não funciona de dentro do android studio.
Migwell
1
Ele ainda não cria o arquivo .apk?
alikonda
0

Quando você tem o Android Studio, faça seu arquivo apk assinado que ele usa

    <property name="ExportedApkPath" value="$PROJECT_DIR$/PROJNAME/APPNAME.apk" />

dentro do workspace.xml para descobrir onde colocá-lo. No entanto, se você usá- ./gradlew assembleReleaselo, o coloca dentro de PROJNAME / build / apk. Eu tenho o mesmo problema. Por alguma razão, meu estúdio Android não me mostrará nada dentro do subdiretório apk, então o apk está faltando para todos os efeitos. Mas se você pesquisar com o Finder, ele está definitivamente lá.

Astryk
fonte
0

Você pode encontrá-lo no

project -> app (or your main app module) -> build -> outputs -> apk
Yvgen
fonte