Dov'è Android Studio che crea il mio file .apk?


103

Ho ricostruito il mio progetto da zero, quindi ci sono stati molti problemi con esso. Al momento, tutto funziona alla grande, tranne che quando provo a eseguire l'app, viene visualizzato il messaggio "Il percorso locale non esiste". , dove il percorso locale punta al percorso: AndroidStudioProjects \ MyProject \ MyProject .. \ build \ production \ MyProject.apk , e abbastanza vero, non c'è alcun file .apk in quella posizione, o addirittura in qualsiasi altra parte del filesystem del progetto.

Tuttavia, posso creare l'app senza problemi e l'esecuzione di gradlew packageDebug mi dà il messaggio " build riuscita ", quindi .apks dovrebbe essere generato. La mia domanda è: dove stanno andando o se non vengono generati, perché no?

Dov'è il percorso di compilazione di ogni set di moduli? Sono un po 'confuso perché la struttura del progetto-> sfaccettature-> Android-> impostazioni del compilatore, struttura del progetto-> moduli-> percorsi-> output del compilatore, build.gradle e MyProject.iml sembrano tutti avere qualcosa a che fare con il build path, ma non capisco bene come si relazionano

modifica: so dove dovrebbe essere , ma non è lì, quindi voglio sapere come modificare il percorso di compilazione

modifica 2: per qualche motivo l'esecuzione di gradlew build crea .apks, ma non genera o gira dall'interno del programma

modifica 3: ecco il mio output di build gradlew, nota che viene compilato correttamente:

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
possibile duplicato della posizione
Gru

dovrebbe essere lì come spiegato da Alex oppure puoi controllare la risposta sopra.
Gru


Il mio era in ./app/release/app-release.apk
Steve Smith il

Risposte:



23

Vai al file dei progetti AndroidStudio

  1. Seleziona il nome del progetto,
  2. Seleziona l'app
  3. Seleziona build
  4. Seleziona Output
  5. Seleziona Apk

Troverai i file APK dell'app qui, se hai eseguito l'app in AVD o anche su un dispositivo hardware


Strano, sto usando Android Studio 3.2, nella directory build come hai detto, c'è solo la intermediatesdirectory, Outputsmanca il file.
Allan Ruin

@AllanRuin hai creato l'APK?
kelalaka

si prega di essere elaborati con i passaggi che hai menzionato.
Shubham Arya

19

Dopo aver compilato il mio codein Android Studio, l'ho trovato qui:

~ \ MyApp_Name \ app \ accumulo \ uscite \ apk \ app-debug.apk


17

Dovresti costruire la tua app invece del processo di debug. Segui questo:

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

inserisci qui la descrizione dell'immagine


11

Stavo riscontrando il problema nel trovare il mio apk di debug. Android Studio 0.8.6 non mostrava l'apk o nemmeno la cartella di output in project / project / build /. Quando ho controllato lo stesso percorso progetto / progetto / build / da Esplora cartelle di Windows, ho trovato la cartella "output" e l'apk di debug al suo interno.


Explorer si arresta in modo
anomalo

Non posso credere di aver perso così tanto tempo solo perché me ne sono dimenticato solo perché Android Studio non ti mostra sempre tutte le directory ...
Jon McClung

9

Per Android Studio:

Se non hai creato l'APK almeno una volta, potresti non trovare la cartella / Outputs / APK. Vai a Build in Android Studio e una delle ultime tre opzioni è Build APK, selezionala. Quindi creerà quella cartella e lì troverai il tuo file APK.


Tutto quanto sopra non ha funzionato per me e questo funziona. Dopo Build APKapparirà anche una finestra di dialogo che ti dice al locatetuo apk, quanto è conveniente!
Ng Sek Long

5

Quando Gradle crea il tuo progetto, inserisce tutti gli APK nella directory build / apk. Puoi anche eseguire un semplice comando find ricorsivo per * .apk nella directory di primo livello del tuo progetto.

Ecco una descrizione migliore ...

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

Visualizza l'immagine completa su http://i.stack.imgur.com/XwjEZ.png


Dov'è definita quella directory? Perché non riesco a trovare alcun file apk da nessuna parte nel mio progetto filestsyem
Migwell

Come nella mia modifica: so dove dovrebbe essere , ma non è lì, quindi forse il percorso di output è rotto in qualche modo?
Migwell

L'ho aggiunto. L'unico problema è che la mia libreria TwoWayLib sembra essere stata costruita due volte. Ciò non spiega perché Android Studio non possa creare apk
Migwell

Ho anche lo stesso problema: né Gradle né Android Studio creano effettivamente un file apk.
Richard Russell

5

L'apk della mia applicazione era in questa posizione

C: \ Users \ haseeb_mir \ AndroidStudioProjects \ MyTestApp \ app \ accumulo \ uscite \ apk \ debug


3

in Android 3.1.0 Sopra usa il percorso sotto per trovare la versione firmata dell'APK

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

e in Windows

AndroidStudioProjects\{project name}\app\release\app-release.apk

2

Nel mio caso per ottenere la mia build di debug, devo disattivare l'opzione Instant Run:

File → Impostazioni → Build, Execution, Deployment → Instant Run e deseleziona Abilita Instant Run.

Quindi, dopo aver eseguito il progetto, ho trovato la mia build nella directory Application \ app \ build \ output \ appDebug \ apk


0

Dai un'occhiata a questa domanda .

TL; DR: pulire, quindi costruire.

./gradlew clean packageDebug 

1
Problema simile, ma nel mio caso l'esecuzione di quel comando fa sì che venga compilato una volta, ma continua a non funzionare dall'interno di Android Studio.
Migwell

1
Ancora non crea il file .apk?
alikonda

0

Quando hai Android Studio crea il tuo file apk firmato che usa

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

all'interno di workspace.xml per scoprire dove posizionarlo. Tuttavia, se lo usi ./gradlew assembleRelease, inseriscilo all'interno di PROJNAME / build / apk. Ho lo stesso problema. Per qualche motivo il mio studio Android non mi mostrerà nulla all'interno della sottodirectory apk, quindi l'apk è a tutti gli effetti mancante. Ma se cerchi con Finder è sicuramente lì.


0

Puoi trovarlo nel file

project -> app (or your main app module) -> build -> outputs -> apk
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.