Wygląda na to, że najnowszy Android 4.2 wprowadził ten stan błędu podczas instalacji, gdy próbuje się zainstalować pakiet APK z niższą wersją. We wcześniejszych wersjach Androida można było zainstalować starsze pakiety APK po prostu za pośrednictwem adb install -r <link to APK>
. Do celów debugowania często muszę ponownie testować starsze pakiety APK; a -r
flaga zastąpi starszą kompilację w starszych wersjach Androida. Czy jest jakieś obejście do zignorowania [INSTALL_FAILED_VERSION_DOWNGRADE]
?
121
-r
flaga poradzi sobie z tym.Odpowiedzi:
Wygląda na to, że najnowsza wersja narzędzi adb ma „flagę zezwalania na obniżenie wersji”, która nie jest wyświetlana w pomocy adb, ale jest wyświetlana w pomocy „pm” na urządzeniu. Więc użyj:
adb install -r -d <link to apk>
źródło
adb install -rd <apkfile>
którym nie udało się. Twoje versino (z oddzielnymi opcjami) działa dobrze. Dzięki!Możesz spróbować użyć,
adb uninstall -k <package>
a następnie zainstalować starszą wersję apk. Z przewodnika użytkowania adb:Wypróbowałem to sam z moim apk i wydaje się, że działa dla większości danych (niektóre dane, takie jak RawContacts, nie zostały zapisane)
źródło
adb shell pm uninstall -k <package>
.Czy włączyłeś wiele kont na swoim urządzeniu (i przekazałeś apk przez ADB)? Jeśli tak, musisz usunąć apk na każdym koncie. Po całkowitym odinstalowaniu Twój push będzie OK.
źródło
W moim przypadku była to nieaktualna wersja Usług Google Play zawartych w moim projekcie. Używam Android Studio. Uruchomiłem aktualizację w SDK i zaimportowałem zaktualizowaną bibliotekę, a błąd zniknął. Tak więc moja sugestia: zaktualizuj do najnowszych bibliotek, do których odwołuje się twój projekt.
źródło
Spróbuj odinstalować wcześniej zainstalowaną wersję aplikacji, używając-
a następnie ponownie zainstaluj / uruchom aplikację
źródło
Mogłeś zainstalować z oddzielnej kopii kodu, gdzie numer wersji był wyższy niż kopia, z którą obecnie pracujesz. W obu przypadkach odinstaluj aktualnie zainstalowaną kopię lub otwórz Ustawienia> Aplikacje, aby określić numer wersji zainstalowanej aplikacji i zwiększ swój versionCode, aby był wyższy w pliku AndroidManifest.
źródło
Miałem również ten sam problem, który można rozwiązać, wykonując poniższe czynności, które są łatwiejsze niż usunięcie dowolnego pliku APK z urządzenia -
1) Uruchom polecenie „adb logcat | grep -i wersja” na terminalu
2) Poszukaj konkretnej linii, która zostanie pokazana na końcu logcat -
3) skopiuj aktualną wersję (np. 9109) i wklej ją do pliku AndroidManifest.xml, jak pokazano poniżej -
Teraz wyczyść i odbuduj aplikację i powinna działać dobrze.
źródło
Może to być problem z zależnościami usług Google Play.
Czasami NIE jest tak, że:
a) jest zainstalowana istniejąca wersja aplikacji, nowsza lub nie
b) istnieje już wersja aplikacji zainstalowana na innym koncie użytkownika na urządzeniu
Więc komunikat o błędzie jest po prostu fałszywy.
W moim przypadku miałem:
Ale kiedy próbowałem
Otrzymałem błędy związane z AndroidX, ponieważ nie zaktualizowałem jeszcze systemu do androidX i nie byłem na to gotowy. Zauważyłem, że działają najnowsze wersje 16.xy i nie pojawia się już komunikat o błędzie. Co więcej, mogłem poczekać do później, kiedy będę gotowy, z aktualizacją do androidX.
źródło
Dla osób mających problemy z Xiaomi:
źródło