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

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:



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


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


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


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.


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á.


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


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


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

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


0

Dê uma olhada nesta questão .

TL; DR: limpe e depois crie.

./gradlew clean packageDebug 

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á.


0

Você pode encontrá-lo no

project -> app (or your main app module) -> build -> outputs -> apk
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.