Android: ошибка при установке APK

Я медленно пытаюсь выполнить некоторые простые задачи в Android Studio. На эмулятор установлено следующее приложение без каких-либо ошибок. Но когда я попытался установить его на реальном устройстве Redmi 3S, эта ошибка возникла:

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

Здесь я столкнулся с подобными вопросами, но в этих случаях ошибка была вызвана не включенной отладкой или не активизацией установки приложения. Тем не менее, я разрешил отладку, и я также попытался установить какое-то другое приложение в Studio, и он работал нормально.

Поэтому, вероятно, вопрос заключается в том, что не так с кодом.

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

И код 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>

Ответы

Ответ 1

Выполните следующие шаги, чтобы преодолеть проблему.

  1. Отключите все устройства, подключенные к системе, и закройте все эмуляторы, работающие в системе.
  2. Отключить функцию мгновенного запуска из настроек.
  3. Выполните чистую сборку.
  4. Включите функцию мгновенного запуска из настроек.
  5. Выполните чистую сборку.
  6. Подключите ваше устройство/запустите эмулятор и убедитесь, что он подключен к сети.
  7. Запустите проект, выбрав устройство/эмулятор.

Замечания:

1) У вас не должно быть разных экземпляров Android Debug Bridge (adb), работающих в системе.

2) Если вы используете Genymotion, убедитесь, что вы используете собственный путь SDK, указанный в настройках Genymotion, который вы указали в настройках Android Studio.

Эти шаги могут решить вашу проблему, однако это может также быть проблема с версиями для Android.

Ответ 2

Отключите мгновенный запуск в Android Studio. Следуйте инструкциям ниже:

  1. Файл >> Настройки >> Сборка, выполнение, развертывание.

  2. Нажмите " Мгновенный запуск" и снимите флажок " Включить мгновенный запуск для изменения кода горячей замены/изменения ресурсов при развертывании ".

  3. Нажмите " Применить " и " ОК ".

Попробуйте запустить приложение еще раз. Это должно установить приложение сейчас. Вы можете снова включить мгновенный запуск в любое время.

РЕДАКТИРОВАТЬ (Android Studio 3.0)

Отключить мгновенный запуск (документ Android)

Чтобы отключить мгновенный запуск:

  1. Откройте диалоговое окно " Настройки" или " Настройки ". (Для Mac, Android StudioНастройки)
  2. Перейдите к Построить, Выполнение, Развертывание > Мгновенный запуск.
  3. Снимите флажок " Включить мгновенный запуск".

Ответ 3

Для устройств Redmi и Mi отключите MIUI Optimization и перезагрузите телефон.

Настройки> Дополнительные настройки> Параметры разработчика> Оптимизация MIUI

Проверить ответ здесь

Ответ 4

Для меня я просто сделал чистый для приложения, тогда все работает нормально.

Ответ 5

Я столкнулся с этой проблемой, я уже удалил apk, теперь я использую Android Studio 3.0 для запуска apk для Xiaomi MIX 2 (Android 7.1.1, API 25), но это не удалось.

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

И Android Studio сообщает мне: "Возможно, эта проблема устранена путем удаления существующей версии apk, если она присутствует, а затем повторной установки". но я удалил этот apk.

Android Studio popup info

И я нажимаю кнопку "ОК", но также не удалось.

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

И, наконец, я нахожу, как решить эту проблему, я не включаю "Проверка приложений через USB", потому что теперь это устройство не может включить его, пока вы не войдете в учетную запись xiaomi, и это новое устройство, которое не вошло в систему.

Шаг 1: Перейдите в "Настройка" → найдите "Параметры разработчика" в Системе и нажмите.

Шаг 2: ВКЛЮЧИТЕ "Проверка приложений через USB" в разделе Debbuging.

Шаг 3. Попробуйте "Запустить приложение" в Android Studio снова!

Ответ 6

Прежде чем попробовать все вышеперечисленные предложения, проверьте, достаточно ли места в памяти устройства. Это также будет причиной этой проблемы.

Ошибка: android.os.ParcelableException: java.io.IOException: запрошенный только внутренний, но недостаточно места

Удачного кодирования :)

Ответ 7

Это может быть совместимость с устройствами Xiaomi для Android версии 2.3 и плагином версии 2.3.0 с мгновенным запуском.

adb multiple-install - сгенерированная ошибка возврата apks.

Вы можете отключить мгновенный запуск или в SettingsSettings Developer options, переключить Turn on MIUI optimization если вы хотите мгновенный запуск.

Ответ 8

Возможно, ваше хранилище устройств заполнено. Если вы тестируете на физическом устройстве. Однако, если вы тестируете в эмуляторе, проверьте, есть ли доступное пространство для хранения. В противном случае вы должны отключить Instant Run.

Ответ 9

Я использовал для очистки проекта и исправил эту проблему.

Построить → Чистый проект.

Ответ 10

У меня также возникла такая же проблема, когда я устанавливал приложение на новом устройстве. Эта ошибка обычно возникает, когда установка приложения не разрешена ОС. Возможно, это связано с тем, что у вас может не быть разрешения на установку приложения на вашем телефоне из любого источника.

Поэтому попробуйте проверить allow install apps via usb в настройках разработчика. Если это не сработает, попробуйте отозвать все usb debugging authorizations а затем попробуйте установить и предоставить разрешение по запросу.

Если это также не режет, попробуйте отключить мгновенный запуск, как описано в одном из приведенных выше ответов.

Ответ 11

У меня была эта проблема, потому что на моем устройстве было недостаточно места на диске.

Ответ 12

Для меня я просто перестроил проект.

В Android Studio:

Построить >> Перестроить проект

Ответ 13

у меня та же ошибка, как исправить, я пробовал все шаги отказались

Ответ 14

Вы можете выполнить этот шаг для перепроверки Instant Run:

  1. Файл >> Настройки >> Сборка, выполнение, развертывание.
  2. Нажмите "Мгновенный запуск" и снимите флажок "Включить мгновенный запуск для изменения кода горячей замены/изменения ресурсов при развертывании".
  3. Нажмите "Применить" и "ОК".

Но иногда перепроверка не работает.

Тогда вам нужно временно отключить антивирус и Защитника Windows, если вы запускаете развертывание на WIN PC

Выполните следующие действия:

  1. Отключите антивирус или Защитника Windows на 15/30 минут
  2. Выполните чистую сборку.
  3. Перестроить проект
  4. Запустите проект на своем эмуляторе или на своих устройствах

Замечания:

  • \app\build\middleates\split-apk\debug\slices\slice_5.apk получает некоторые вредоносные программы Затронут.

Ответ 15

У меня была такая же проблема, но моей проблемой было нехватка места на устройстве.

Попробуйте это На вашем устройстве перейдите в Настройки → Обслуживание устройства → Оптимизировать сейчас

Как только это будет сделано, попробуйте еще раз.

Ответ 16

Отключите мгновенный запуск в Android Studio. Следуйте инструкциям ниже:

  • Для старой версии Android Studio (Version < Android Studio 3.0) Файл >> Настройки >> Сборка, выполнение, развертывание.

  • Нажмите " Instant Run и снимите все флажки " Enable Instant Run to hot swap code/resource changes on deploy.

  • Нажмите на Apply и OK.

  • Попробуйте запустить приложение еще раз. Это должно установить приложение сейчас. Вы можете снова включить Instant Run любое время.

  • Для новичков (Android Studio 3.0) Отключить мгновенный запуск (по умолчанию)

Чтобы отключить мгновенный запуск:

  • Откройте Preferences dialog " Settings или " Preferences dialog. (Для Mac, Android Studio → Настройки)

  • Перейдите к Build, Execution, Deployment > Instant Run.

  • Снимите флажок "Включить мгновенный запуск".

  • Очистите Project и попробуйте снова запустить приложение. Это должно install приложение сейчас. Вы можете снова enable Instant Run любое время.

Ответ 17

Отключите устройство от системы и в Android-студии перейдите в ФайлНеверный кэш и/Перезапустите. Оно работает....

Ответ 18

Простой и прямой ответ...

Снимите флажок Instant Run, как следует...

Шаг: файл >> Настройки >> Построение, выполнение, развертывание >> снимите флажок Включить мгновенный запуск, чтобы выполнить горячую замену изменений кода/ресурсов при развертывании (по умолчанию включено). enter image description here

Шаг 2: Применить и нажать Ok enter image description here

Шаг 3: Запустите проект...

Работать наверняка.... @Ambilpura

Ответ 19

Если вы можете удалить все свои приложения на устройстве. Я использую Android Emulator, я удалил свои приложения через;

Настройки> Приложения и уведомления> выберите приложение> удалить.