Ошибка установки adb: INSTALL_CANCELED_BY_USER

92

Пытаюсь установить приложение через adb и получаю ошибку:

$ ./adb -d install /Users/dimon/Projects/one-place/myprogram/platforms/android/build/outputs/apk/android-debug.apk -r -g
3704 KB/s (4595985 bytes in 1.211s)
    pkg: /data/local/tmp/android-debug.apk
Failure [INSTALL_CANCELED_BY_USER]

В устройстве в данный момент ничего не делаю. Устройство: Xiaomi MI5, MIUI 7.2.13, Android 6.0. Режим разработчика включен. Как это исправить?

Та же ошибка, которую я получаю при попытке запустить команду «ionic run android».

UPD

Вот логи команды adb logcat, получаемой в момент установки программы:

06-06 10:04:20.051   788   903 I DisplayFeatureService: void android::update_watchlist(const prop_info*, void*): sys.boot_completed: 1
06-06 10:04:20.063   788   903 I DisplayFeatureService: void android::update_watchlist(const prop_info*, void*): sys.boot_completed: 1
06-06 10:04:20.078 13397 13397 E ANDR-PERF-MPCTL: Unable to create control service (stage=2, rc=-1)
06-06 10:04:20.082   788   903 I DisplayFeatureService: void android::update_watchlist(const prop_info*, void*): sys.boot_completed: 1
06-06 10:04:20.079 13396 13396 W iop     : type=1400 audit(0.0:527): avc: denied { write } for name="socket" dev="tmpfs" ino=14686 scontext=u:r:dumpstate:s0 tcontext=u:object_r:socket_device:s0 tclass=dir permissive=0
06-06 10:04:20.088   788   903 I DisplayFeatureService: void android::update_watchlist(const prop_info*, void*): sys.boot_completed: 1
06-06 10:04:20.926 13400 13400 D AndroidRuntime: >>>>>> START com.android.internal.os.RuntimeInit uid 2000 <<<<<<
06-06 10:04:20.930 13400 13400 D AndroidRuntime: CheckJNI is OFF
06-06 10:04:20.966 13400 13400 D ICU     : No timezone override file found: /data/misc/zoneinfo/current/icu/icu_tzdata.dat
06-06 10:04:20.995 13400 13400 I Radio-JNI: register_android_hardware_Radio DONE
06-06 10:04:21.004 13400 13400 E         : WFDWhiteListing : library initialized successfully
06-06 10:04:21.020 13400 13400 D AndroidRuntime: Calling main entry com.android.commands.pm.Pm
06-06 10:04:21.027 13400 13400 I Timeline: Timeline: Activity_launch_request time:973226
06-06 10:04:21.028  1497  2996 I ActivityManager: START u0 {act=android.intent.action.VIEW dat=file:///data/local/tmp/android-debug.apk typ=application/vnd.android.package-archive flg=0x18000000 cmp=com.miui.securitycenter/com.miui.permcenter.install.AdbInstallActivity (has extras)} from uid 2000 on display 0
06-06 10:04:21.033  1497  2996 E         : WFDMMServiceClient ctor Context = 0x0, Cb = 0x0
06-06 10:04:21.033  1497  2996 E         : getWFDMMServiceInstance get new Instance
06-06 10:04:21.033  1497  2996 E         : Service not available yet
06-06 10:04:21.034  1497  2996 E         : WFDMMServiceClient::~WFDMMServiceClient
06-06 10:04:21.037  1497  2996 E         : WFDMMServiceClient ctor Context = 0x0, Cb = 0x0
06-06 10:04:21.037  1497  2996 E         : getWFDMMServiceInstance get new Instance
06-06 10:04:21.037  1497  2996 E         : Service not available yet
06-06 10:04:21.037  1497  2996 E         : WFDMMServiceClient::~WFDMMServiceClient
06-06 10:04:21.050  2875  3077 D PowerKeeperEventLogManager: notifyForegroundCompomentChanged ComponentInfo{com.miui.securitycenter/com.miui.permcenter.install.AdbInstallActivity}
06-06 10:04:21.051  2875  3036 D PowerKeeperExecutor: notify state normal_state enter...
06-06 10:04:21.051  2875  3036 D PowerKeeperExecutor: foreground_change:
06-06 10:04:21.051  2875  3036 D PowerKeeperExecutor: set_cpu_powermode(middle)
06-06 10:04:21.051  2875  3036 I PowerKeeperExecutor: no local quick execution method for set_cpu_powermode
06-06 10:04:21.051  2875  3036 D PowerKeeperExecutor: set_lcd_mode(ui)
06-06 10:04:21.051  2875  3036 I PowerKeeperExecutor: no local quick execution method for set_lcd_mode
06-06 10:04:21.049  2887  2887 W EventReader: type=1400 audit(0.0:528): avc: denied { search } for name="756" dev="proc" ino=16099 scontext=u:r:system_app:s0 tcontext=u:r:zygote:s0 tclass=dir permissive=0
06-06 10:04:21.049  2887  2887 W EventReader: type=1400 audit(0.0:529): avc: denied { search } for name="756" dev="proc" ino=16099 scontext=u:r:system_app:s0 tcontext=u:r:zygote:s0 tclass=dir permissive=0
06-06 10:04:21.051  3247  4440 I octvm_power: power mode [normal] start 1465200261
06-06 10:04:21.051  3247  4440 I octvm_power: Action: set_cpu_powermode(middle) for [foreground_change]
06-06 10:04:21.051  3247  4440 I octvm_drv: common drv: platform_set_power_profile -> platform not support
06-06 10:04:21.051  2533  2887 I octvm   : task pid 2113 have been add to group sys_standby.
06-06 10:04:21.051  3247  4440 I octvm_power: Action: set_lcd_mode(ui) for [foreground_change]
06-06 10:04:21.051  3247  4440 I octvm_drv: common drv: platform_set_lcd_mode -> platform not support
06-06 10:04:21.051  2533  2887 I octvm   : task pid 2900 have been add to group sys_standby.
06-06 10:04:21.049  2887  2887 W EventReader: type=1400 audit(0.0:530): avc: denied { search } for name="756" dev="proc" ino=16099 scontext=u:r:system_app:s0 tcontext=u:r:zygote:s0 tclass=dir permissive=0
06-06 10:04:21.051  2533  2887 I octvm   : task pid 4553 have been add to group sys_standby.
06-06 10:04:21.051  2533  2887 I octvm   : [sys_standby]cgroup_add_tasks max single write time: 0ms
06-06 10:04:21.051  2533  2887 I octvm   : [sys_standby]cgroup_add_tasks total time consume: 0ms
06-06 10:04:21.051  3247  4440 I octvm_power: onPowerModeChanged[normal] called
06-06 10:04:21.052  2875  3093 I FirstNotificationController: handleUnlockState: stoped
06-06 10:04:21.055  1497  2996 I Timeline: Timeline: App_transition_ready time:973254
06-06 10:04:21.055  1976  1976 V PhoneStatusBarPolicy: updateManagedProfile: mManagedProfileFocused: false mKeyguardVisible: true
06-06 10:04:21.055  1497  2996 I Timeline: Timeline: App_transition_stopped time:973255
06-06 10:04:21.059  1497  2996 E ActivityManager: Invalid thumbnail dimensions: 0x0
06-06 10:04:21.059  4553  4553 W .securitycenter: type=1400 audit(0.0:531): avc: denied { search } for name="tmp" dev="dm-0" ino=28 scontext=u:r:system_app:s0 tcontext=u:object_r:shell_data_file:s0 tclass=dir permissive=0
06-06 10:04:21.066  4553  4553 W asset   : Asset path /data/local/tmp/android-debug.apk is neither a directory nor file (type=0).
06-06 10:04:21.066  4553  4553 D AdbInstallActivity:  parsePackage is null , path :/data/local/tmp/android-debug.apk
06-06 10:04:21.059  4553  4553 W .securitycenter: type=1400 audit(0.0:532): avc: denied { search } for name="tmp" dev="dm-0" ino=28 scontext=u:r:system_app:s0 tcontext=u:object_r:shell_data_file:s0 tclass=dir permissive=0
06-06 10:04:21.072  1497  2230 E         : WFDMMServiceClient ctor Context = 0x0, Cb = 0x0
06-06 10:04:21.072  1497  2230 E         : getWFDMMServiceInstance get new Instance
06-06 10:04:21.072  1497  2230 E         : Service not available yet
06-06 10:04:21.072  1497  2230 E         : WFDMMServiceClient::~WFDMMServiceClient
06-06 10:04:21.073  1497  2230 E         : WFDMMServiceClient ctor Context = 0x0, Cb = 0x0
06-06 10:04:21.073  1497  2230 E         : getWFDMMServiceInstance get new Instance
06-06 10:04:21.073  1497  2230 E         : Service not available yet
06-06 10:04:21.073  1497  2230 E         : WFDMMServiceClient::~WFDMMServiceClient
06-06 10:04:21.075  1497  2230 E ActivityManager: Invalid thumbnail dimensions: 0x0
06-06 10:04:21.076  2875  3077 D PowerKeeperEventLogManager: notifyForegroundCompomentChanged ComponentInfo{com.android.settings/com.android.settings.Settings$WifiSettingsActivity}
06-06 10:04:21.069  2887  2887 W EventReader: type=1400 audit(0.0:533): avc: denied { search } for name="756" dev="proc" ino=16099 scontext=u:r:system_app:s0 tcontext=u:r:zygote:s0 tclass=dir permissive=0
06-06 10:04:21.076  1497  2230 I Timeline: Timeline: App_transition_ready time:973275
06-06 10:04:21.076  1497  2230 I Timeline: Timeline: App_transition_stopped time:973275
06-06 10:04:21.076  2533  2887 I octvm   : task pid 2060 have been add to group sys_standby.
06-06 10:04:21.076  2533  2887 I octvm   : [sys_standby]cgroup_add_tasks max single write time: 0ms
06-06 10:04:21.076  2533  2887 I octvm   : [sys_standby]cgroup_add_tasks total time consume: 0ms
06-06 10:04:21.077  1976  1976 V PhoneStatusBarPolicy: updateManagedProfile: mManagedProfileFocused: false mKeyguardVisible: true
06-06 10:04:21.090 13400 13400 I art     : System.exit called, status: 1
06-06 10:04:21.090 13400 13400 I AndroidRuntime: VM exiting with result code 1.
06-06 10:04:21.100  2060  2130 V MI_STAT : disabled local event upload

Я вижу, когда создается android-debug.apk, но не понимаю, почему он не устанавливается. Возможно, ключевые строки:

06-06 10:04:21.066  4553  4553 W asset   : Asset path /data/local/tmp/android-debug.apk is neither a directory nor file (type=0).
06-06 10:04:21.066  4553  4553 D AdbInstallActivity:  parsePackage is null , path :/data/local/tmp/android-debug.apk

но это не строки с ошибками, а просто предупреждение и отладка. Тоже странная строка:

06-06 10:04:21.059  1497  2996 E ActivityManager: Invalid thumbnail dimensions: 0x0

но я не знаю, проблема ли это.

Также пробовал устанавливать через adb некоторые другие приложения, не только самописные. Но никаких результатов.

Дмитрий Скрябин
источник
1
У вас уже установлено приложение на вашем телефоне? Если да, сначала удалите и попробуйте снова. Другой вариант - использовать adb install -r /path/to/apk/file.apk, который будет установлен поверх приложения, если оно уже существует.
KhoPhi 05
Я попытался удалить его и попытался использовать adb install -r, но мне это не помогло.
Дмитрий Скрябин
Удалось ли вам это решить?
gaurav jain
1
Здравствуйте Дмитрий Скрябин, у меня такой же телефон и такая же проблема, как и у вас. Не могу adb ничего установить на телефон. Неизвестные источники включены, и я могу устанавливать приложения из хранилища на устройство, но не могу отлаживать приложения из Android Studio или Xamarin. Я чувствую, что это вещь OS / Xiaomi Mi5. Собираюсь зайти на форумы Xiaomi, чтобы задать тот же вопрос.
Yudhistre
@Yudhistre, спасибо за комментарий. Я временно перешел на отладку на эмуляторе iPhone, для моих целей этого достаточно.
Дмитрий Скрябин

Ответы:

278

Такая же проблема с тем же устройством была здесь.

Итак, это проблема Xiaomi, и вот решение этой проблемы:

  1. Перейдите в приложение «Безопасность» и нажмите «Параметры» в правом верхнем углу.

  2. Прокрутите вниз до группы «Параметры функции» и найдите «Разрешения».

  3. На нем отключите опцию «Установить через USB», которая управляет установкой приложений через USB и не позволяет это сделать.

На последнем устройстве Redmi

Настройки> Дополнительные параметры> Параметры разработчика> Параметры разработчика: Проверка Установите с помощью опции USB .

Удачи!

Юрий Брагин
источник
2
Да, это работает! Подсказка для других пользователей: в русском языке (на прошивках от xiaomi.eu) этот параметр называется «Менеджер установки».
Дмитрий Скрябин
11
В более новой версии приложения безопасности больше нет такой возможности. Ответ Виктора Лопеса сработал для меня
Рэй
9
В недавнем обновлении включение установки через usb не будет работать, если вы не войдете в учетную запись mi. Это безумие!!! Есть идеи, как обойти эту нелепую функцию?
НИФИН 02
7
Тихо удивительно, что для этого нужна SIM-карта. Вздох!
Sreekanth Karumanaghat
1
Он хочет сначала авторизоваться и не позволяет включать install via usbбез этого. При регистрации код подтверждения не отправляется ни на электронную почту, ни на мобильный телефон. Какого черта ?!
fnc12
78

Столкнулся с той же проблемой в устройствах MI проблемой и решил проблему, выполнив следующие действия:

1) Перейти к настройке

2) Щелкните Дополнительные настройки

3) Нажмите " Параметры разработчика".

4) Нажмите переключатель Установить через USB, чтобы включить его.

и вопрос будет решен.

введите описание изображения здесь

Капил Раджпут
источник
4
Когда я включаю установку через USB, мне предлагается войти в учетную запись MI. Как я могу пропустить этот шаг?
Chandrakanth
5
@Chandrakanth, вы должны войти в свою учетную запись MI, к сожалению, вы не можете ее пропустить
Капил Раджпут
Этого пункта меню нет в Примечании 4.
Мартин Эрлик
5
Когда я пытаюсь это сделать, он говорит: «Это устройство временно запрещено». Есть ли предложения?
Шайлендра Мадда
2
также в Redmi Note 4 написано «Вставьте сим-карту», ​​не знаю, зачем ему сим-карта
Шашанк Кумар
52

В MIUI 8 перейдите в «Настройки разработчика» и включите «Установить через USB».

Виктор Лопес
источник
4
А также он запрашивает учетную запись MIUI, чтобы включить установку через USB .
Shashanth
У меня есть учетная запись MIUI, но «установка через USB» не включена
Innocent
Решение: если вы столкнулись с проблемой включения «установки через usb», просто отключитесь от Wi-Fi и включите его. Будет работать!
Акира Кроник
22

Для устройств Redmi и Mi отключите оптимизацию MIUI

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

Чираг Шах
источник
Ничего себе, я так ненавижу MIUI os, это пример того, что «добрыми намерениями вымощен путь в ад» Эта «оптимизация MIUI» потратила слишком много времени. Спасибо
Рами Лойферман
Действительно, если Вы отключите упомянутую опцию, нет необходимости включать опцию «Установить приложения через USB» и входить в учетную запись Mi - установка adb «просто работает». Большое спасибо за совет!
Матеуш Фальковски,
10

Проблема, похоже, связана с функцией мгновенного запуска. Перейдите в « Файл -> Настройки -> Сборка, выполнение, развертывание -> Мгновенный запуск». » и просто отключите его.

Надеюсь, это сработает, если приведенные выше ответы не работают.

человек-муравей
источник
Работал на моем Xiaomi MI6.
FunkSoulBrother 08
10

Для устройства Mi или Xiaomi

1) Настройка

2) Дополнительная настройка

3) Вариант разработчика

4) Установка через USB : Включите

У меня все работает нормально.

Примечание : не работает, попробуйте также следующие параметры

1) Войдите в учетную запись MI (не для всех устройств)

2) Также отключите Включите оптимизацию MIUI : Настройка -> Дополнительные настройки -> Вариант разработчика, внизу мы получим эту опцию.

3) Параметр разработчика должен быть включен и ссылка для включения параметра разработчика: Описание здесь

Все еще не работает?

-> вышел из учетной записи Mi, а затем создал новую учетную запись и включил отладку по USB.

Благодарность

Реван Сиддаппа
источник
8

1 Настройки

2 Дополнительные настройки

3 Варианты разработчика

4 Параметры разработчика: установите флажок «Установить через USB».

введите описание изображения здесь

Кешав Гера
источник
7

Отключите оптимизацию Miui в настройках разработчика, затем перезагрузите телефон. у меня это сработало. Настройки > Дополнительные настройки> Параметры разработчика> Оптимизация MIUI

Vinay Rathod
источник
6

Раньше у меня была такая же проблема. Вот мое решение:

  1. Перейдите в Настройки → найдите Параметры разработчика в системе и нажмите.
  2. ВКЛЮЧИТЕ установку через USB в разделе «Отладка».
  3. Попробуйте запустить приложение в Android Studio еще раз!
Jems K
источник
4

Я попробовал все шаги, описанные выше, но не смог.

Как, connect to the internet with Data connection, Turning off the MIUI optimization and reboot, Включение Install via USBот безопасности установок и т.д.

Тогда я нашел решение.

Шаги:

  • Установите PlexVPN .
  • установить China-Shanghaiсервер
  • Попробуйте включить Install via USBопцию разработчика.

Вот и все.

Сударшан
источник
За исключением того, что для этого требуется приложение в приложении
егорикем 01
2

Для устройства с ОС MIUI

1) Перейти к настройке

2) Прокрутите вниз до дополнительных настроек.

3) Вы найдете вариант разработчика внизу

4) Включите это - Установка через USB: Включите

Включив это, он работает очаровательно на моем устройстве MIUI8.

Кульс
источник
2

На Xiaomi Mi5s с MIUI8.3 (Android 6) Xiaomi.EU Rom:

Настройки / Другие настройки / Параметры разработчика / Включение: Разрешить отладку по USB, Разрешить установку с USB и Разрешить отладку по USB (параметры безопасности)

{Извините за перевод, на моем устройстве есть испанский}

Иеселисра
источник
2

Кроме того, любой пароль блокировки приложения следует удалить, выбрав НАСТРОЙКИ> БЛОКИРОВКА ПРИЛОЖЕНИЯ, введите установленный пароль и снимите блокировку. Это сработало для меня на REDMI 4A

Ченкамала Кумаравел
источник
2
  1. Отключите параметр «Проверять приложения через USB» в режиме разработчика и попробуйте установить снова. Он должен работать, как указано в ссылке https://stackoverflow.com/a/29742394/2559990 .
goldy021
источник
Я видел эту ссылку, но мне это не помогло. Я попытался отключить его, включить и перезагрузить устройство после его изменения, но безрезультатно :( Также я попытался повторно включить режим разработчика на устройстве - все безуспешно. Я обновил основной пост, добавил больше логов с устройства.
Дмитрий Скрябин
1

Еще одно: после некоторых обновлений режима разработчика MIUI отключается. Я был уверен, что он включен, но запустить приложение не удалось. Итак, я снова включил режим разработчика, и все начало работать. Я сталкивался с этой проблемой несколько раз. Надеюсь, это поможет.

порфирий
источник
1

Иногда приложение плохо сгенерировано: плохо подписано или неправильно выровнено и сообщает об ошибке.

Проверьте свой jarsigner и zipaligned команды.

Вирако
источник
1

Я использую Xiaomi Redmi Prime 3S, ни один из вышеперечисленных методов у меня не работал. Это меня расстроило

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

Йовислах
источник
1

Если ваш переключатель «Установка по USB» включен и вы получаете сообщение об ошибке «Устройство временно ограничено», примените любую из мобильных тем по умолчанию. Если применяется какая-либо другая тема разработчика, она не позволит вам включить установку по USB. У меня это работает.

user3766149
источник
0

Это мой случай (с использованием response-native ). Я нажимаю Ctrl + C, чтобы прервать установку, и после этого возникла эта ошибка. - решение:

cd android
./gradlew clean
Ли Тхук
источник
-2

Это проблема Xiaomi. Если возможно, обновите MIUI до последней версии, затем перейдите в «Настройки»> «Дополнительные настройки»> «Параметры разработчика»> «Параметры разработчика»: установите флажок «Установить через USB».

Это решило мою проблему, надеюсь, это решит и вашу удачу!

Маниш Кумар Сингх
источник
1
чем это отличается от stackoverflow.com/a/40971196/1778421 или stackoverflow.com/a/41674530/1778421
Alex P.