Błąd instalacji Adb: INSTALL_CANCELED_BY_USER

92

Próbuję zainstalować aplikację przez adb i pojawia się błąd:

$ ./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]

W urządzeniu w tej chwili nic nie robię. Urządzenie to Xiaomi MI5, MIUI 7.2.13, Android 6.0. Tryb programisty włączony. Jak to naprawić?

Ten sam błąd, który pojawia się przy próbie uruchomienia polecenia „ionic run android”.

UPD

Oto logi z polecenia „adb logcat” pobierające w momencie instalacji programu:

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

Widzę, kiedy tworzy się android-debug.apk, ale nie rozumiem, dlaczego nie jest instalowany. Może kluczowe ciągi to:

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

ale to nie są ciągi błędów, tylko ostrzeżenie i debugowanie. Również dziwna linia:

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

ale nie wiem, czy to jest problem.

Próbowałem też zainstalować przez adb kilka innych aplikacji, nie tylko napisanych samodzielnie. Ale bez rezultatów.

Dmitrij Skryabin
źródło
1
Czy masz już zainstalowaną aplikację na swoim telefonie? Jeśli tak, najpierw odinstaluj i spróbuj ponownie. Inną opcją jest użycie adb install -r /path/to/apk/file.apk, które zainstaluje się na aplikacji, jeśli już istnieje.
KhoPhi
Próbowałem go odinstalować i próbowałem użyć adb install -r, ale to mi nie pomogło.
Dmitry Skryabin
Czy byłeś w stanie to rozwiązać?
gaurav jain
1
Witam Dmitry Skryabin, mam ten sam telefon i mam taki sam problem jak Ty. Nie mogę nic zainstalować w telefonie. Nieznane źródła są włączone i mogę instalować aplikacje z magazynu na urządzenie, ale nie mogę debugować aplikacji z Android Studio lub Xamarin. Czuję, że to kwestia OS / Xiaomi Mi5. Przechodzę do forów Xiaomi, aby zadać to samo pytanie.
Yudhistre
@Yudhistre, dziękuję za komentarz. Tymczasowo przerzuciłem się na debugowanie na emulatorze iPhone'a, to mi wystarczy.
Dmitry Skryabin

Odpowiedzi:

278

Wystąpił ten sam problem z tym samym urządzeniem.

A więc to problem Xiaomi, a oto rozwiązanie tego problemu:

  1. Przejdź do aplikacji „Bezpieczeństwo” i wybierz „Opcje” w prawym górnym rogu

  2. Przewiń w dół do grupy „Ustawienia funkcji” i znajdź „Uprawnienia”

  3. Tam wyłącz opcję „Zainstaluj przez USB”, która zarządza instalacją aplikacji przez USB i na to nie pozwala.

Na najnowszym urządzeniu Redmi

Ustawienia> Ustawienia dodatkowe> Opcje programisty> Opcje programu: Sprawdź zainstalować poprzez opcję USB .

Powodzenia!

Yury Bragin
źródło
2
Tak to działa! Wskazówka dla innych użytkowników: w języku rosyjskim (w oprogramowaniu z xiaomi.eu) ten parametr nazywa się „Менеджер установки”.
Dmitry Skryabin
11
W nowszej wersji aplikacji Security nie ma już tej opcji. Odpowiedź Victora Lopeza zadziałała dla mnie
Ray
9
W ostatniej aktualizacji to włączenie instalacji przez USB nie zadziała, chyba że zalogujesz się na konto mi. To jest szalone !!! Masz pomysł, jak ominąć tę absurdalną funkcję?
NIPHIN
7
Cicho zaskakujące, że do tego potrzebna jest karta SIM. Westchnienie!
Sreekanth Karumanaghat
1
Chce najpierw autoryzować i nie pozwala na włączenie install via usbbez tego. Rejestracja nie powoduje wysłania kodu weryfikacyjnego ani e-mailem, ani telefonem komórkowym. WTF ?!
fnc12
78

Zmierzyłem się z tym samym problemem w urządzeniach MI i rozwiązałem problem, wykonując następujące kroki:

1) Przejdź do Ustawienia

2) Kliknij Dodatkowe ustawienia

3) Kliknij Opcje programisty

4) Kliknij przełącznik Instaluj przez USB, aby go włączyć

i problem zostanie rozwiązany.

wprowadź opis obrazu tutaj

Kapil Rajput
źródło
4
Kiedy włączam Instalację przez USB, prosi o podpisanie konta MI. Jak mogę pominąć ten krok?
Chandrakanth
5
@Chandrakanth musisz zalogować się na swoje konto MI, niestety nie możesz go pominąć
Kapil Rajput
Ta pozycja menu nie istnieje w uwadze 4.
Martin Erlic
5
Kiedy próbuję, pojawia się komunikat „To urządzenie jest tymczasowo ograniczone”. Masz jakieś sugestie?
Shailendra Madda
2
również redmi note 4 mówi „Włóż kartę SIM”, nie wiem, dlaczego potrzebna jest karta SIM
Shashank Kumar
52

W MIUI 8 przejdź do Ustawień programisty i przełącz opcję „Zainstaluj przez USB”, aby ją włączyć.

Víctor López
źródło
4
A także prosi o konto MIUI, aby włączyć ustawienie Instaluj przez USB .
Shashanth
Mam włączone konto MIUI, ale nadal opcja „instalacja przez USB” nie jest włączona
Innocent
Rozwiązanie: Jeśli napotkasz problem z możliwością „instalacji przez USB”, po prostu odłącz się od Wi-Fi i włącz ją. To zadziała!
Akira Kronic
22

W przypadku urządzeń Redmi i Mi wyłącz Optymalizację MIUI

Ustawienia> Ustawienia dodatkowe> Opcje programisty> Optymalizacja MIUI

Chirag Shah
źródło
Wow, tak nienawidzę systemu MIUI, to jest przykład na to, że „droga do piekła jest wybrukowana dobrymi intencjami”. Ta „Optymalizacja MIUI” zmarnowała mi zbyt dużo czasu. Dziękuję
Rami Loiferman
Rzeczywiście, jeśli wyłączysz wspomnianą opcję, nie ma potrzeby włączać opcji „Zainstaluj aplikacje przez USB” i logować się na konto Mi - instalacja adb „po prostu działa”. Bardzo dziękuję za radę!
Mateusz Falkowski
10

Wydaje się, że problem dotyczy funkcji Instant Run. Przejdź do „ Plik -> Ustawienia -> Kompilacja, wykonanie, Wdrożenie -> Natychmiastowe uruchamianie ” i po prostu ją wyłącz.

Mam nadzieję, że to zadziała, jeśli powyższe odpowiedzi nie działają.

człowiek Mrówka
źródło
Pracował dla mojego Xiaomi MI6.
FunkSoulBrother
10

Dla urządzenia Mi lub Xiaomi

1) Ustawienie

2) Dodatkowe ustawienia

3) Opcja programisty

4) Zainstaluj przez USB : włącz

U mnie działa dobrze.

Uwaga : nie działa, spróbuj również następujących opcji

1) Zaloguj się do konta MI (nie dotyczy wszystkich urządzeń)

2) Wyłącz także Włącz optymalizację MIUI : Ustawienia -> Dodatkowe ustawienia -> Opcja programisty, u dołu otrzymamy tę opcję.

3) Opcja programisty musi być włączona i Link do włączania opcji programisty: Opis tutaj

Wciąż nie działa?

-> wylogowano się z konta Mi, a następnie utworzono nowe konto i włącz debugowanie USB.

Dzięki

Revan siddappa
źródło
8

1 Ustawienia

2 Dodatkowe ustawienia

3 Opcje programisty

4 Opcje programisty: Zaznacz opcję Instaluj przez USB.

wprowadź opis obrazu tutaj

Keshav Gera
źródło
7

Wyłącz optymalizacje Miui w ustawieniach programisty, a następnie uruchom ponownie telefon. to działało dla mnie. Ustawienia > Ustawienia dodatkowe> Opcje programisty> Optymalizacja MIUI

Vinay Rathod
źródło
6

Miałem wcześniej ten sam problem. Oto moje rozwiązanie:

  1. Przejdź do Ustawienia → znajdź opcje programisty w Systemie i kliknij.
  2. WŁĄCZ instalację przez USB w sekcji Debugowanie.
  3. Spróbuj ponownie uruchomić aplikację w Android Studio!
Jems K.
źródło
4

Wykonałem wszystkie opisane powyżej kroki, ale nie udało mi się.

Podobnie jak, connect to the internet with Data connection, Turning off the MIUI optimization and reboot, Włączanie Install via USBod ustawień zabezpieczeń itd.

Wtedy znalazłem rozwiązanie.

Kroki:

  • Zainstaluj PlexVPN .
  • ustaw China-Shanghaiserwer
  • Spróbuj włączyć Install via USBz opcji programisty.

To wszystko.

Sudarshan
źródło
Tyle że wymaga to w aplikacji
egorikem
2

Dla urządzenia MIUI OS

1) Przejdź do Ustawienia

2) Przewiń w dół do Dodatkowe ustawienia

3) Na dole znajdziesz opcję Developer

4) Włącz to - Zainstaluj przez USB: Włącz

Włączając to, działa urok w moim urządzeniu MIUI8.

Kuls
źródło
2

Na Xiaomi Mi5s z MIUI8.3 (Android 6) Xiaomi.EU Rom:

Ustawienia / Inne ustawienia / Opcje programisty / Włącz: Zezwalaj na debugowanie USB, Zezwalaj na instalację USB i Zezwalaj na debugowanie USB (opcje bezpieczeństwa)

{Przepraszamy za tłumaczenie, moje urządzenie ma język hiszpański}

ieselisra
źródło
2

Ponadto każde hasło blokady aplikacji powinno zostać usunięte przez USTAWIENIA> BLOKADA APLIKACJI, wprowadź ustawione hasło i usuń blokadę. To zadziałało dla mnie na REDMI 4A

Chenkamala Kumaravel
źródło
2
  1. Wyłącz opcję „Weryfikuj aplikacje przez USB” w trybie programisty i spróbuj zainstalować ponownie. Powinno działać zgodnie z linkiem https://stackoverflow.com/a/29742394/2559990 .
goldy021
źródło
Widziałem ten link, ale mi to nie pomogło. Próbowałem go wyłączyć, włączyć i ponownie uruchomić urządzenie po zmianie, ale bez rezultatów :( Próbowałem również ponownie włączyć tryb programisty w urządzeniu - wszystko bez powodzenia. Zaktualizowałem post główny, dodałem więcej logów z urządzenia.
Dmitry Skryabin
1

Jeszcze jedno: po niektórych aktualizacjach trybu programisty MIUI zostaje wyłączony. Byłem pewien, że jest włączony, ale nie mogłem uruchomić aplikacji. Włączyłem więc ponownie tryb programisty i wszystko zaczęło działać. Kilka razy napotkałem ten problem. Mam nadzieję, że to pomoże.

porfirion
źródło
1

Czasami aplikacja jest źle wygenerowana: źle podpisana lub źle wyrównana i zgłoś błąd.

Sprawdź polecenia jarsigner i zipaligned.

Virako
źródło
1

Używam Xiaomi Redmi Prime 3S, żadna z powyższych metod nie zadziałała. To mnie sfrustrowało

próbowałem, wylogowałem się z konta Mi, a następnie utworzyłem nowe konto. tada ... po tym mogę włączyć debugowanie USB. Mam nadzieję że to pomoże.

Yoweeslah
źródło
1

Jeśli przełącznik Instaluj przez USB jest włączony i pojawia się błąd „Urządzenie jest tymczasowo ograniczone”, zastosuj dowolny z domyślnych motywów mobilnych. Jeśli zastosowany zostanie jakikolwiek inny motyw programisty, nie umożliwi on włączenia opcji Instaluj przez USB. To działa dla mnie.

user3766149
źródło
0

To jest mój przypadek (używając react-native ) Naciskam Ctr + C, aby przerwać instalację i po tym wystąpił ten błąd. - rozwiązanie:

cd android
./gradlew clean
Lee Thuc
źródło
-2

Jest to problem Xiaomi. Jeśli to możliwe, zaktualizuj MIUI do najnowszej wersji, a następnie przejdź do Ustawienia> Ustawienia dodatkowe> Opcje programisty> Opcje programisty: Sprawdź opcję Zainstaluj przez USB.

To rozwiązało mój problem, mam nadzieję, że rozwiąże również twój, powodzenia!

Manish Kumar Singh
źródło