Android: erreur lors de l'installation D'APKs

j'essaie lentement de faire quelques tâches simples en Android Studio. L'application suivante est installé sur émulateur sans erreurs. Mais quand j'ai essayé de l'installer sur un vrai appareil Redmi 3S cette erreur s'est produite:

Unknown failure (Failure - not installed for 0)
Error while Installing APKs

je suis passé par des questions similaires ici, mais dans ces cas l'erreur a été causée par un débogage non activé, ou par le fait de ne pas accepter l'installation de l'application. Cependant, j'ai autorisé le débogage et j'ai aussi essayé d'installer une autre application dans Studio et it a bien fonctionné.

donc la question est probablement, qu'est-ce qui ne va pas avec le code.

MainActivity.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();
    }
}

et le code xml:

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>
34
demandé sur Lucie P. 2017-03-14 12:18:00

8 réponses

Suivez ces étapes pour résoudre le problème.

déconnecter tous les appareils connectés au système, et fermer tous les émulateurs fonctionnant sur le système. Désactiver la fonctionnalité D'exécution instantanée des paramètres. Effectuer une construction propre. Activez la fonctionnalité D'exécution instantanée à partir des paramètres. Effectuer une construction propre. Connectez votre appareil / démarrez votre émulateur et assurez-vous qu'il est en ligne. Lancez le projet en sélectionnant l'appareil/émulateur.

Remarque:

1) vous ne devriez pas avoir différent les instances du Pont de débogage Android (adb) tournant sur le système.

2) Si vous utilisez Genymotion, assurez-vous d'utiliser le chemin SDK personnalisé mentionné dans les paramètres Genymotion que vous avez mentionnés dans les paramètres D'Android Studio.

ces étapes sont susceptibles de résoudre votre problème, mais il peut également être un problème avec les versions android.

75
répondu JPZ 2018-05-01 19:27:24

désactivez la course instantanée sur Android Studio. Suivez les étapes ci-dessous:

  1. Fichier >> Paramètres >> Construire, L'Exécution, Le Déploiement.

  2. Cliquez sur Course Instantanée et unckeck "Activer l'Instant Run hot swap code/les modifications de ressources à déployer".

  3. Cliquez sur "Appliquer" et " OK".

Essayez d'exécuter la application à nouveau. Il doit installer l'application. Vous pouvez réactiver L'exécution instantanée à tout moment.

EDIT (Android Studio 3.0)

Désactiver L'Instant Exécuter (Document Android)

Pour désactiver l'Instant de lancer:

  1. Ouvrir Paramètres ou Préférences boîte de dialogue. (Pour Mac,Android Studio -> Préférences)
  2. naviguez vers Construction, Exécution, Déploiement>Course Instantanée.
  3. Décocher la case à côté de Activer L'Instant Run.
39
répondu Animesh Patra 2018-09-12 17:18:04

Pour moi, je viens de faire un clean pour l'Application puis tout fonctionne bien.

7
répondu Mohammed Salim 2018-02-19 22:39:41

pour les appareils Redmi et Mi, désactivez L'optimisation MIUI et redémarrez votre téléphone.

Paramètres > Paramètres supplémentaires > Options du développeur > optimisation du MIUI

Vérifier la Réponse ici

6
répondu Mahesh Cheliya 2017-06-07 09:12:30

Il pourrait être la compatibilité avec Xiaomi appareils pour Android studio version 2.3 et Grad le plugin version 2.3.0 avec fonctionnement instantané.

adb multiple-install l'erreur de retour splited apks.

vous pouvez désactiver la course instantanée, ou en Settings -> Developer options, bascule Turn on MIUI optimization si vous voulez instantanée terme aussi.

3
répondu alijandro 2017-03-14 09:47:57

je suis maintenant confronté à ce problème, j'ai déjà désinstallé l'apk, maintenant j'utilise Android Studio 3.0 veulent exécuter apk à Xiaomi MIX 2(Android 7.1.1, API 25), mais il a échoué.

$ adb shell pm install -t -r "/data/local/tmp/com.package"
Failure [INSTALL_FAILED_USER_RESTRICTED: Install canceled by user]

et Android Studio me dit "il est possible que ce problème soit résolu en désinstallant une version existante de l'apk si elle est présente, puis en la réinstallant."mais j'ai désinstallé cette apk.

Android Studio popup info

Et je clique sur le bouton "OK", mais il aussi, échoué.

$ adb shell pm uninstall com.package
Unknown failure (at android.os.Binder.execTransact(Binder.java:565))
Error while Installing APK

et finalement je trouve comment résoudre ce problème, je n'allume pas "Verify apps over USB", parce que maintenant cet appareil ne peut pas l'allumer jusqu'à ce que vous vous connectez compte xiaomi, et c'est un nouvel appareil qui n'a pas été connecté.

Étape 1: Allez dans "Paramètres" → trouvez "Options du développeur" dans le système, et cliquez.

Etape 2: TOUR SUR "Verify apps via USB" dans la section Débbugging.

Étape 3: Essayez "Run app" dans Android Studio encore!

3
répondu Smiles 2017-12-28 03:43:09

il se peut que votre mémoire soit pleine. Si vous testez sur un dispositif physique. Toutefois, si vous testez dans l'Émulateur puis vérifiez là aussi que l'espace de stockage est disponible ou pas. Sinon, vous devez désactiver la course instantanée.

1
répondu GauRav MisHra 2018-03-14 07:39:18

j'ai également éprouvé le même problème lorsque j'installais une application dans un nouvel appareil. Cette erreur se produit généralement lorsque l'installation de l'application n'est pas autorisée par le système d'exploitation. Cela pourrait être parce que vous pourriez ne pas avoir l'autorisation d'installer l'application sur votre téléphone à partir de n'importe quelle source.

alors essayez de vérifier le allow install apps via usb dans les options des développeurs. Si cela ne fonctionne pas alors essayer de révoquer tous les usb debugging authorizations puis essayez d'installer et donnez votre permission quand on vous le demande.

si cela aussi ne le coupe pas essayez de désactiver l'exécution instantanée comme expliqué dans l'une des réponses ci-dessus.

1
répondu arnav 2018-09-01 20:56:52