Wenn ich versuche, eine App zu installieren, gibt es zwei Möglichkeiten:
- Installieren Sie vorhandene APK aus dem Build-Ordner, wenn ich das ausführe
app
- Installieren Sie APK nach der Ausführung
clean build
Für vorhandene APK im Build-Ordner funktioniert die App einwandfrei. Wenn ich das Projekt jedoch mit Build
-> bereinige Clean Project
und dann versuche, das auszuführen app
(dh die App auf meinem Emulator oder physischen Gerät zu installieren), wird folgende Fehlermeldung angezeigt:
Die APK-Datei /Users/MyApplicationName/app/build/outputs/apk/app-debug.apk ist auf der Festplatte nicht vorhanden.
HINWEIS: Dieses Verhalten tritt nur auf, wenn ich das Projekt bereinige und nicht, wenn ich bereits eine vorgefertigte App APK in meinem Erstellungsordner habe
Ich habe darauf hingewiesen: Die APK-Datei ist nicht auf der Festplatte vorhanden, aber mein Punkt ist, dass wir, wenn wir die App normalerweise nach dem Bereinigen des Projekts ausführen, niemals einen Build daraus erstellen müssen, wenn das APK nicht im Build-Ordner vorhanden ist generiert und installiert automatisch die neueste Version.
Dinge, die ich versucht habe:
- Ausführen der App, wenn eine APK-Datei im Build-Ordner vorhanden ist (funktioniert einwandfrei)
- Ausführen der
Clean Project
-> Ausführen der App (erwartet wird, dass das Projekt erstellt und die App installiert wird, aber der oben genannte Fehler angezeigt wird!) - Gleicher Vorgang zum Reinigen und Ausführen der App nach dem Ausführen
Invalidate Caches/Restart
quelle
Build -> Clean Project->Rebuild Project
Antworten:
Ich habe eine Lösung für Ihr Problem. Ich hoffe es hilft!
Auch von Android Studio auf Twitter bestätigt : https://twitter.com/androidstudio/status/981914632892960768
1) Bitte bearbeiten Sie Ihre App-Konfiguration wie folgt.
2) Hier sehen Sie Ihre App-Konfiguration wie folgt.
3) Hier fehlt das Gradle-fähige make-Attribut vor dem Start der Konfiguration. Sie können hier sehen.
4) Bitte fügen Sie dieses Gradle-fähige Make-Attribut auf diese Weise hinzu. Klicken Sie auf das Symbol + und wählen Sie Gradle-fähiges Make aus, wie in diesem Bildschirm angezeigt.
5) Sie können dies hinzufügen, ohne eine Aufgabe zu schreiben. Drücken Sie einfach die OK-Taste und die Aufgabe wird hinzugefügt. Jetzt sollte sie so aussehen. Übernehmen Sie nun die Änderungen und führen Sie Ihre Anwendung aus.
Hoffe, es wird dieses alte Apk-Installationsproblem bei sauberem Build in neuem Android Studio 3.1-Problem lösen.
Hinweis: Dieses Problem wurde in der neuen stabilen Version von Android Studio 3.1.1 behoben .
Viel Spaß beim Codieren !!
quelle
Kann ein Fehler sein. Sie sollten die Einstellungen ändern.
Sie sollten das
Run/Debug Configurations dialog
& auswählenRun > Edit Configurations
Gradle-aware Make
Stellen Sie sicher, dass in TaskList hinzugefügt wurde oder nicht. Wenn nicht, klicken Sie auf+
und wählen Sie aus den Optionen.Hinweis
Wenn Sie erhalten
Sie sollten das Kontrollkästchen deaktivieren
INSTANT RUN
.quelle
buildToolsVersion
??Bereinigen Sie Ihr Projekt und führen Sie es erneut aus
Wenn es dann nicht funktioniert
quelle
Dieses Problem wurde mit Android Studio 3.1.1 (April 2018) behoben. Aktualisieren Sie Ihr Android Studio auf 3.1.1.
Hier finden Sie eine Erklärung, in der die Details, die Ursache und die Lösung des Problems neu bewertet werden:
In einigen Fällen, wenn ein Projekt erstellt wurde
Android Studio 3.0 was opened for the first time in Android Studio 3.1, the Gradle-aware Make task was removed from the Before launch area in Run/Debug Configurations.
Das Ergebnis war, dass Projekte nicht erstellt wurden, als auf die Schaltfläche Ausführen oder Debuggen geklickt wurde, was wiederum zu Fehlern wie der Bereitstellung falscher APKs und Abstürzen bei Verwendung von Instant Run führte.Um dieses Problem zu lösen, erfolgt
Android Studio 3.1.1 adds the Gradle-aware Make task to the run configuration for projects that are missing this entry.
diese Änderung nach der ersten Gradle-Synchronisierung, wenn das Projekt geladen wird.Offizielle Versionshinweise: https://developer.android.com/studio/releases/index.html#3-1-0
quelle