it-swarm.com.ru

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>
44
Lucie P.

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

Отключите все устройства, подключенные к системе, и закройте все эмуляторы, работающие в Системе . Отключите функцию мгновенного запуска из настроек . Выполните чистую сборку . Включите функцию мгновенного запуска из настроек . Выполните clean build . Подключите ваше устройство/запустите эмулятор и убедитесь, что он подключен к сети . Запустите проект, выбрав устройство/эмулятор.

Заметка:

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

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

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

93
JPZ

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

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

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

  3. Нажмите «Apply» и «OK».

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

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

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

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

  1. Откройте диалоговое окно Настройки или Настройки. (Для Mac, Android Studio -> Настройки)
  2. Перейдите к Build, Execution, Deployment> Instant Run.
  3. Снимите флажок рядом с Включить мгновенный запуск.
47
Animesh Patra

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

8
Mohammed Salim

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

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

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

7
Mahesh Cheliya

Я сейчас столкнулся с этой проблемой, я уже удалил 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» в разделе «Отладка».

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

4
Smiles

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

adb multiple-install ошибка возврата разделенных apks.

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

3
alijandro

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

2
GauRav MisHra

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

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

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

1
happy_Coding

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

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

1
ssowri1

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

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

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

1
arnav

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

Снимите флажок Мгновенный запуск, как следует ...

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

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

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

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

0
Ambilpura Sunil Kumar

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

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

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

0
Catalin

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

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

0
yusuf

Отключить мгновенный запуск в 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) отключить мгновенный запуск (по умолчанию)

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

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

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

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

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

0
Swapnil Akubattin

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

0
VAIBHAV NERLE