Całkowicie odinstaluj aplikację na Lollipop


16

Mam problem z odinstalowaniem aplikacji na Androida 5.0 (Nexus 5). Tworzę aplikację na Androida, więc debuguję / uruchamiam ją bezpośrednio na urządzeniu. W celach produkcyjnych wyeksportowałem tę samą aplikację ze swoim plikiem kluczy, odinstalowałem wcześniej debugowany APK, próbowałem zainstalować podpisany APK i otrzymałem ten błąd:

Istniejący pakiet o tej samej nazwie z kolidującym podpisem jest już zainstalowany.

Czy to dlatego, że kody bajtowe są nadal w środowisku uruchomieniowym ART? Czy ktoś ma pomysł, jak to rozwiązać?

Odpowiedzi:


27

Po odinstalowaniu aplikacji przy użyciu zwykłego podejścia sprzed Lollipopa (np. Przeciągnięcie do ikony „kosza” lub z informacji o aplikacji > Odinstaluj ) jest ona odinstalowywana tylko dla bieżącego użytkownika . Można to potwierdzić, wyświetlając w menedżerze aplikacji opcję „Niezainstalowany”. Android wykryje, że aplikacja nadal tam jest, uniemożliwiając jej instalację z tą samą nazwą pakietu.

Jest to spowodowane kontem Gość (jeśli jest aktywowane), że gdy aplikacja jest instalowana, jest automatycznie instalowana na wszystkich użytkownikach. Musisz więc również odinstalować aplikację, co może być kłopotliwe w codziennym użytkowaniu.

Istnieje kilka metod całkowitego odinstalowania aplikacji (uporządkowane według praktyczności):

  1. (z konta właściciela) Wybierz Ustawienia > Aplikacje , znajdź i otwórz informacje o aplikacji. Następnie otwórz menu przepełnienia (3 pionowe kropki) i wybierz Odinstaluj dla wszystkich użytkowników .
  2. (z konta gościa) Dezaktywuj konto gościa, jeśli go nie potrzebujesz (więcej informacji: Usuwanie domyślnego konta użytkownika gościa z Androida Lollipop )
  3. (z komputera) Wprowadź adb uninstall <package>w wierszu polecenia / powłoce. Jest to to samo, co „odinstaluj dla wszystkich użytkowników”
  4. (z kont gościa / innych) Znajdź aplikację i odinstaluj ją normalnie.
    • Jeśli nie możesz go odinstalować, spróbuj usunąć konto i utwórz nowe, a następnie spróbuj ponownie znaleźć i odinstalować aplikację.

2
Co powiesz na aplikacje, które mają wyłączony przycisk Odinstaluj ? Jak aplikacje systemowe duplikowane przez aplikacje z pakietów Gapps?
Robert Koritnik

@RobertKoritnik przepraszam, to jest poza zakresem tej odpowiedzi, ponieważ odinstalowanie aplikacji systemowych wymaga dostępu do konta root, takiego jak to pytanie .
Andrew T.

0

Udało mi się odinstalować w ten sposób:

  • Najpierw próbowałem odinstalować w normalny sposób (używając Ustawienia-> Aplikacje-> nazwa-aplikacji-> odinstaluj), co w pewien sposób usuwa możliwość jego uruchomienia, ale najwyraźniej nie odinstalowuje.
  • Uruchomiłem Google Play i sprawdziłem aplikację.
  • Widziałem, że przycisk Odinstaluj jest nieaktywny, ale instalacja była aktywna, więc nacisnąłem Instaluj . Teraz mogę uruchomić aplikację.
  • Następnie przycisk Odinstaluj w Google Play jest aktywny.
  • Stuknij opcję Odinstaluj, aby usunąć aplikację.

Voila, zniknęło!


Chyba przycisk odinstalowania nie będzie widoczny, chyba że aplikacja zostanie zaktualizowana do bieżącej wersji w sklepie playstore. Jeśli nie masz zaktualizowanej wersji aplikacji, którą próbujesz odinstalować w ten sposób, pojawią się dwie opcje, tj. Otwórz lub Aktualizuj. Musisz najpierw zaktualizować aplikację, a następnie ją odinstalować, co jest dodatkowym krokiem, który musi zrobić użytkownik, ale jest to bezużyteczne, ponieważ użytkownik chce się go pozbyć.
Lucky

@Firelord: 1) Tak, mam na myśli, że wszystkie powyższe czynności zostały uruchomione w aplikacji Sklep Google Play na urządzeniu mobilnym. Aplikacja umożliwia odinstalowanie aplikacji, które już zainstalowałeś (ale nie odinstaluje aplikacji, które zostały wstępnie załadowane na twoje urządzenie, westchnienie).
Scott Biggs,

@Firelord 2) Wyjaśnienie: w kroku 3 używam aplikacji Sklep Google Play, aby ponownie zainstalować aplikację, co pozwala mi ją uruchomić. Wracam do sklepu Google Play (i ponownie szukam aplikacji), aby wykonać kroki 4 i 5. Mam nadzieję, że wszystko się wyjaśni.
Scott Biggs,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.