57 votes

Android: erreur lors de l'installation des fichiers APK

Je suis lentement en essayant 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 périphérique réel Redmi 3S cette erreur s'est produite:

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

Je suis passé par les mêmes questions ici mais dans ces cas, l'erreur a été causée par pas activé le débogage, ou pas accepitng l'application instalation. Cependant, je me suis permis de débogage et j'ai aussi essayé d'installer une autre application dans le Studio et il a bien fonctionné.

Donc la question est, quel est le problème 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>

114voto

JPZ Points 1112

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

Déconnectez tous les périphériques connectés au système, et à proximité de tous les émulateurs en cours d'exécution sur le Système. Désactiver l'Instant dispositif de passage de paramètres. Effectuer une nouvelle version. Allumez Instant dispositif de passage de paramètres. Effectuer une nouvelle version. Connectez votre appareil/démarrer votre émulateur et de s'assurer qu'il est en ligne. Exécuter le projet en sélectionnant le périphérique/émulateur.

Note:

1) Vous ne devriez pas avoir différentes instances de Android Debug Bridge(adb) en cours d'exécution sur le système.

2) Si vous utilisez Genymotion alors assurez-vous que vous utilisez le kit de développement personnalisé chemin mentionné dans la Genymotion paramètres que vous avez mentionné dans les paramètres d'Android Studio.

Ces mesures sont de nature à résoudre votre problème, mais il peut aussi être un problème avec les versions d'android.

53voto

Animesh Patra Points 768

Éteignez l'Instant Exécuter dans Android Studio. Suivez les étapes ci-dessous:

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

  2. Cliquez sur Instantané Exécuter et unckeck "Activer Instantanée Run hot swap code/les modifications de ressources à déployer".

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

Essayez d'exécuter à nouveau l'application. Il doit installer l'application. Vous pouvez l'activer à nouveau Instantanée Exécuter à nouveau à tout moment.

EDIT (Android Studio 3.0)

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

Pour désactiver l'Instant Exécuter:

  1. Ouvrez les Paramètres ou Préférences de la boîte de dialogue. (Pour Mac, Android Studio -> Préférences)
  2. Accédez à Construire, l'Exécution, le Déploiement > Instantanée Exécuter.
  3. Décochez la case à côté de Activer Instant Exécuter.

9voto

Mahesh Patel Points 56

Pour les appareils Redmi et Mi, désactivez MIUI Optimization et redémarrez votre téléphone.

Paramètres> Paramètres supplémentaires> Options pour les développeurs> Optimisation MIUI

Vérifier la réponse ici

9voto

Mohammed Salim Points 141

Pour moi, je viens de faire un nettoyage pour l'application alors tout fonctionne bien.

6voto

Smiles Points 236

Je suis maintenant face à ce problème, j'ai déjà désinstallé le apk, maintenant j'utilise Android Studio 3.0 souhaitez exécuter apk pour Xiaomi MÉLANGER 2(Android 7.1.1, l'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 est résolu par la désinstallation d'une version de l'apk s'il est présent, et puis de le ré-installer." mais je l'ai désinstallé cette apk.

Android Studio popup info

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

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

Et finalement j'ai trouvé comment résoudre ce problème, je ne tournent pas sur "Verify apps via USB", parce que maintenant ce périphérique ne peut pas tourner sur elle jusqu'à ce que vous vous connectez xiaomi compte, et c'est un nouveau dispositif qui n'a pas été connecté.

Étape 1: Allez dans "Paramètres" → rechercher "options pour les Développeurs" dans le Système, et cliquez sur.

Étape 2: activez l'option "Vérifier les applications via USB" dans Debbuging section.

Étape 3: Essayer de "Run" application Android, et à nouveau en Studio!

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X