Ich versuche langsam einige einfache Aufgaben in Android Studio
zu erledigen. Die folgende App wird fehlerfrei auf dem Emulator installiert. Als ich versuchte, Redmi 3S auf einem echten Gerät zu installieren, trat dieser Fehler auf:
Unknown failure (Failure - not installed for 0)
Error while Installing APKs
Ich habe ähnliche Fragen durchgegangen, aber in diesen Fällen wurde der Fehler dadurch verursacht, dass das Debugging nicht aktiviert war oder die App-Installation nicht akzeptiert wurde. Ich erlaubte jedoch das Debuggen und versuchte auch, eine andere Anwendung in Studio zu installieren, und funktionierte gut.
Die Frage ist wahrscheinlich, was mit dem Code falsch ist.
Hauptaktivität.Java
package tlacitko.button;
import Android.support.v7.app.AppCompatActivity;
import Android.os.Bundle;
import Android.view.View;
import Java.io.BufferedReader;
import Java.io.IOException;
import Java.io.InputStream;
import Java.io.InputStreamReader;
import Java.net.MalformedURLException;
import Java.net.URL;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void sendMessage(View view) {
new Thread(new Runnable() {
public void run() {
runOnUiThread(new Runnable() {
@Override
public void run() {
try{
URL url = new URL("http://147.32.186.51:8080");
// HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
InputStream is = url.openStream();
BufferedReader br = new BufferedReader(new
InputStreamReader(is));
String s = "";
}catch(MalformedURLException ex){
}catch(IOException e){
}
}
});
}
}).start();
}
}
Und der XML-Code:
activity_main.xml
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Try to connect the server."
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Button
Android:id="@+id/button"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginLeft="16dp"
Android:layout_marginRight="7dp"
Android:layout_marginTop="16dp"
Android:onClick="sendMessage"
Android:text="Conncect"
app:layout_constraintLeft_toRightOf="@+id/editText"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</Android.support.constraint.ConstraintLayout>
Befolgen Sie diese Schritte, um das Problem zu beheben.
Trennen Sie alle an das System angeschlossenen Geräte und schließen Sie alle Emulatoren, die auf System ..__ ausgeführt werden. Deaktivieren Sie die Instant Run-Funktion von den Einstellungen ..__ clean build . Verbinden Sie Ihr Gerät/starten Sie den Emulator und stellen Sie sicher, dass er online ist.
Hinweis:
1) Sie sollten keine unterschiedlichen Instanzen von Android Debug Bridge (adb) auf dem System ausführen.
2) Wenn Sie Genymotion verwenden, stellen Sie sicher, dass Sie den in den Genymotion-Einstellungen angegebenen benutzerdefinierten Sdk-Pfad verwenden, den Sie in den Einstellungen von Android Studio angegeben haben.
Diese Schritte lösen wahrscheinlich Ihr Problem, es kann jedoch auch ein Problem mit Android-Versionen sein.
Deaktivieren Sie den Sofortlauf in Android Studio. Folgen Sie den unteren Schritten:
Datei >> Einstellungen >> Erstellung, Ausführung, Bereitstellung.
Klicken Sie auf Instant Run und deaktivieren Sie "Instant Run aktivieren, um den Code für Hot-Swap-Code/Ressourcen bei der Bereitstellung zu ändern".
Klicken Sie auf "Apply" und "OK".
Führen Sie die Anwendung erneut aus. Es sollte die App jetzt installieren. Sie können den Instant Run jederzeit wieder aktivieren.
Instant Run deaktivieren ( Android-Dokument )
So deaktivieren Sie Instant Run:
Für mich habe ich gerade eine clean für die App gemacht, dann funktioniert alles gut.
Deaktivieren Sie für Redmi- und Mi-Geräte die MIUI-Optimierung und starten Sie das Telefon neu.
Einstellungen> Zusätzliche Einstellungen> Entwickleroptionen> MIUI Optimization
Ich bin jetzt mit diesem Problem konfrontiert, ich habe die apk bereits deinstalliert, jetzt benutze ich Android Studio 3.0, um apk auf Xiaomi MIX 2 (Android 7.1.1, API 25) auszuführen, aber es schlug fehl.
$ adb Shell pm install -t -r "/data/local/tmp/com.package"
Failure [INSTALL_FAILED_USER_RESTRICTED: Install canceled by user]
Android Studio teilt mir mit: "Es ist möglich, dass dieses Problem behoben wird, indem eine vorhandene Version der apk deinstalliert wird, sofern vorhanden, und dann erneut installiert wird." aber ich habe diese apk deinstalliert.
Und ich klicke auf "OK", aber es schlug auch fehl.
$ adb Shell pm uninstall com.package
Unknown failure (at Android.os.Binder.execTransact(Binder.Java:565))
Error while Installing APK
Und schließlich finde ich, wie ich dieses Problem lösen kann. Ich schalte "Überprüfe Apps über USB" nicht ein, da dieses Gerät es erst einschalten kann, wenn Sie sich bei xiaomi angemeldet haben, und dies ist ein neues Gerät, das nicht angemeldet ist.
Schritt 1: Gehen Sie zu „Einstellungen“ → Suchen Sie im System nach „Entwickleroptionen“ und klicken Sie auf.
Schritt 2: EINSCHALTEN „Apps über USB überprüfen“ im Abschnitt Debbuging.
Schritt 3: Versuchen Sie erneut, „App ausführen“ in Android Studio auszuführen!
Möglicherweise ist dies die Kompatibilität mit Xiaomi
-Geräten für die Android-Studio-Version 2.3
und die Gradle-Plugin-Version 2.3.0
mit sofortiger Ausführung.
adb multiple-install
Die aufgeteilten apks geben einen Fehler zurück.
Sie können den Sofortlauf ausschalten oder in Settings
-> Developer options
den Turn on MIUI optimization
ausschalten, wenn Sie den Sofortlauf auch möchten.
Möglicherweise ist Ihr Gerätespeicher voll. Wenn Sie auf einem physischen Gerät testen ... Wenn Sie jedoch in Emulator testen, überprüfen Sie dort auch, ob Speicherplatz verfügbar ist oder nicht. Ansonsten müssen Sie den Instant Run ausschalten.
Bevor Sie alle oben genannten Vorschläge ausprobieren, überprüfen Sie genügend Speicherplatz im Gerät . Dies wird auch dieses Problem begründen.
Fehler: Android.os.ParcelableException: Java.io.IOException: Angefordert nur intern, aber nicht genügend Speicherplatz
Viel Spaß beim Codieren :)
Ich habe das Projekt gereinigt und dieses Problem behoben.
Build -> Projekt reinigen.
Das gleiche Problem trat auch bei der Installation einer App auf einem neuen Gerät auf. Dieser Fehler tritt normalerweise auf, wenn die Installation der App von os ..__ nicht zulässig ist, da Sie möglicherweise nicht die Berechtigung haben, die App von einer beliebigen Quelle auf Ihrem Telefon zu installieren.
Überprüfen Sie also den allow install apps via usb
in den Entwickleroptionen. Wenn dies nicht funktioniert, widerrufen Sie den gesamten usb debugging authorizations
und versuchen Sie es mit der Installation.
Wenn dies auch nicht der Fall ist, versuchen Sie, den Sofortlauf zu deaktivieren, wie in einer der obigen Antworten beschrieben.
Einfache und klare Antwort ...
Deaktivieren Sie Instant Run wie folgt ...
Schritt: Datei >> Einstellungen >> Erstellen, Ausführen, Bereitstellen >> Deaktivieren Sie Sofortiges Ausführen aktivieren, um Code-/Ressourcenänderungen bei der Bereitstellung im laufenden Betrieb auszutauschen (Standardeinstellung aktiviert).
Schritt 2: Übernehmen und auf Ok klicken
Schritt 3: Führen Sie das Projekt aus ...
Sicher arbeiten .... @ Ambilpura
Ich hatte das gleiche Problem, aber mein Problem war der Platz auf dem Gerät.
Versuchen Sie dies Gehen Sie auf Ihrem Gerät zu Einstellungen -> Gerätewartung -> Jetzt optimieren
Sobald dies geschehen ist, versuchen Sie es erneut.
Wenn Sie alle Ihre Anwendungen auf dem Gerät löschen können. Ich benutze Android Emulator und habe meine Apps über gelöscht.
Einstellungen> Apps & Benachrichtigungen> App auswählen> deinstallieren .
Deaktivieren Sie Instant Run in Android Studio.Führen Sie die folgenden Schritte aus:
Für die alte Version von Android Studio (Version < Android Studio 3.0
) Datei >> Einstellungen >> Erstellen, Ausführen, Bereitstellen.
Klicken Sie auf Instant Run
und deaktivieren Sie alle Enable Instant Run to hot swap code/resource changes on deploy
.
Klicke auf Apply und OK.
Führen Sie die Anwendung erneut aus. Es sollte die App jetzt installieren. Sie können Instant Run
jederzeit wieder aktivieren.
Für Neu (Android Studio 3.0
) Sofortige Ausführung deaktivieren (Standardeinstellung)
So deaktivieren Sie Instant Run:
Öffnen Sie das Settings
oder Preferences dialog
. (Für Mac, Android Studio -> Einstellungen)
Navigieren Sie zu Build, Execution, Deployment > Instant Run
.
Deaktivieren Sie das Kontrollkästchen neben "Instant Run aktivieren".
Bereinigen Sie Project und führen Sie die Anwendung erneut aus. Es sollte jetzt install
der App sein. Sie können enable Instant Run
jederzeit erneut eingeben.
Trennen das Gerät vom System und in Android Studio Gehe zu Datei -> Cache ungültig machen und/Neustart . Es klappt....
Sie können diesen Schritt befolgen, um Instant Run erneut zu überprüfen:
Aber manchmal funktioniert eine erneute Überprüfung nicht.
Diese Zeit müssen Sie vorübergehend deaktivieren Sie Ihr AntiVirus und Windows Defender, wenn Sie Ihre Bereitstellung in WIN PC ausführen
Befolgen Sie diese Schritte:
Anmerkung: