Czasami ten scenariusz występuje podczas programowania. Wprowadziłbym zmianę w swoim kodzie źródłowym, wcisnął przycisk Zapisz wszystko, a następnie uruchomiłbym, ale zmiana nie byłaby widocznie odzwierciedlona w aplikacji - (używam urządzenia do testowania). Mogę nawet odinstalować aplikację na moim urządzeniu i uruchomić ponownie, a nowo zainstalowana aplikacja nadal nie odzwierciedla zmiany w kodzie źródłowym. Kiedy tak się stanie, muszę wyedytować źródło, nacisnąć przycisk Uruchom i może wtedy nowa wersja ze zmianami, których się spodziewałem, będzie na urządzeniu.
Wypróbowałem również tutaj rozwiązanie, ale wydaje się, że nie działa często.
android
deployment
android-studio
Po prostu Brian
źródło
źródło
adb
z terminala. Rzeczy, których próbowałem: - wyczyść, odbuduj, unieważnij pamięci podręczne i uruchom ponownie Studio -Odpowiedzi:
Mam ten sam problem. Ten wątek pojawił się jako pierwszy, kiedy go szukałem. Rozwiązałem to (mając nadzieję), nie używając funkcji Instant Run. Może nie jest to najlepsze rozwiązanie, ale na razie działa.
Po prostu przejdź do „Plik -> Ustawienia -> Kompilacja, wykonanie, Wdrażanie -> Natychmiastowe uruchamianie” i po prostu je wyłącz. Dzięki temu Android Studio tworzy się od zera za każdym razem, ale jest to lepsze niż nie budowanie go poprawnie.
Mini rant: prawie każda wersja Android Studio zawiera irytujący błąd. Niedługo wypuszczą wersję 2, ale jej wersja beta wciąż zawiera błędy. Mam nadzieję, że w najbliższej przyszłości ustabilizują IDE.
źródło
File -> Preferences -> Build, Execution, Deployment
EDIT2 (2020-03-09)
Jeśli używasz gradle 6.0 w swoim gradle-wrapper.properties, możesz również spotkać się z podobną sytuacją, ponieważ ten błąd występuje w wersji 6.0. Zamiast tego spróbuj 6.0.1.
Wczoraj (27.03.2018) Android Studio opublikowało oficjalną aktualizację z wersji 3.0.1 do 3.1 i wygląda na to, że wiele osób (w tym ja) ponownie zaczęło napotykać ten problem.
Kredytowej # 5 komentarzu tutaj , poniżej jak to rozwiązać:
W Android Studio przejdź do
Run
>Edit Configuration
.Pod
Before launch:
, jeśli nie możesz znaleźćGradle-aware Make
, tak jak poniżej:Dodaj
Gradle-aware Make
i pozostawTask
puste.Ostrzeżenie : nie wiem, co oznacza to działanie i czy spowoduje jakieś skutki uboczne. Doceń, jeśli ktoś może udzielić więcej wyjaśnień na ten temat!
EDYTOWAĆ
Dzięki odwołaniu @ChristopherSmit ta strona wspomina, że
Gradle-aware make
oznacza „Skompiluj projekt i uruchom Gradle”.Na początku myślę, że może
Run
to zająć więcej czasu, nawet jeśli żaden kod nie został zmieniony; ale po testach drugi raz jest nadal znacznie szybszy, jeśli żaden kod nie został zmieniony.Biorąc pod uwagę fakt, że jest to opcja domyślna, jeśli tworzysz nowy projekt w AS 3.1, myślę, że ta konfiguracja jest całkiem bezpieczna.
źródło
Miałem ten sam problem, używając Android Studio 2.0.0, rozwiązałem go, przebudowując mój projekt.
Build > Rebuild Project
lub przez Wyczyść i uruchom ponownie
Run > Clean and Rerun
źródło
To był prawdziwy problem, dopóki nie zdałem sobie sprawy, że moje zmiany nie mogą być propagowane we wszystkich odpowiednich plikach ...
Jeśli masz problem z układami, tak jak ja, może się okazać, że musisz zaktualizować układ w folderze res> layout-v17 . Wprowadziłem zmiany za pośrednictwem widoku projektu w folderze układu i początkowo te zmiany wydawały się automatycznie propagowane do layout-v17 . Jednak później zmiany NIE BYŁY.
Sprawdź folder res> layout-v17 i zobacz, czy pliki .xml w tym folderze odzwierciedlają zmiany, które widzisz w folderze res> layout . Prawdopodobnie okaże się, że nie. Napraw to i przeprowadź ponowne wdrożenie. Podobnie jak ja, powinieneś zobaczyć nowe modyfikacje kodu.
Mam nadzieję że to pomoże.
źródło
Na razie rozwiązałem problem, zamykając aplikację i uruchamiając ją ponownie. Zadziałało jak urok. Nie jestem jeszcze pewien, czy to zbieg okoliczności, ale myślę, że warto spróbować.
Naprawdę zastanawiam się, czy to działa również u innych osób. Spróbujmy i daj mi znać.
źródło
W Android Studio 3.6.3 możesz włączyć automatyczny restart, jeśli natychmiastowe uruchomienie się nie powiedzie.
Po prostu przejdź do Plik | Ustawienia | Kompilacja, wykonanie, wdrożenie | Wdrożenie i zaznacz pola wyboru.
źródło
Również ja rozwiązałem to, nie używając funkcji Instant Run. Może nie jest to najlepsze rozwiązanie, ale na razie działa. Używam Android Studio 2.0 beta 2 ...
źródło
Dla mnie natychmiastowy bieg był koszmarem, czas kompilacji 2-5 minut i, co denerwujące, często nie uwzględniał ostatnich zmian w kompilacjach. Bardzo polecam wyłączenie natychmiastowego uruchamiania i dodanie tej linii do gradle.properties:
Pierwsza kompilacja często zajmuje trochę czasu w przypadku dużych projektów (1-2 minuty), ale po zapisaniu w pamięci podręcznej kolejne kompilacje są zwykle szybkie (<10 sekund).
Mam tę wskazówkę od użytkownika reddit / u / PytaniaEverythang, co pozwoliło mi zaoszczędzić TAK wiele kłopotów z natychmiastowym uruchomieniem!
źródło
Upewnij się, że nie masz alternatywnego układu. Jeśli tak, możesz zmienić jeden i wdrożyć inny.
źródło
Ten sam problem zaczął się pojawiać po uaktualnieniu buildVersion z 23. Próbowałem usunąć AVD i odtworzyć, zsynchronizować z plikami Gradle. Nic nie pomogło. Całkowita ponowna instalacja Andriod Studio rozwiązała problem. To może nie być rozwiązanie, ale to zadziałało tylko dla mnie.
źródło
Pomogło mi dodanie złego kodu XML do jednego z moich plików XML układu, próba kompilacji i uzyskanie błędu, a następnie cofnięcie zmiany i ponowne debugowanie. Nie ładnie, ale dość szybko.
Kolejna rzecz, która wydaje się działać przez większość czasu: odłącz i ponownie podłącz telefon / urządzenie programistyczne. Wydaje się, że wymusza to ponowną instalację, przynajmniej na moim komputerze z systemem Linux.
źródło
Podoba mi się funkcja Instant Run i nie lubię jej wyłączać tylko z powodu tego błędu. Nie jest to rozwiązanie, ale jako lepsze obejście wolałbym:
Zajmuje to mniej czasu niż czyszczenie lub odbudowa .
AKTUALIZACJA
Uruchom ponownie aplikację również:
źródło
Mam ten sam problem, odznaczyłem natychmiastowe uruchamianie, a także wypróbowałem opcję „wyczyść i uruchom”, ale nie działa. Próbowałem stopniować synchronizację, ale nadal miałem problem. Zostanie rozwiązany tylko wtedy, gdy całkowicie go odbuduję, usuwając folder kompilacji.
źródło
Miałem ten sam problem, próbowałem wszystkiego, takich jak czyszczenie i przebudowa, synchronizacja stopniowania, a nawet odinstalowywanie i instalowanie aplikacji, ale zauważenie zadziałało. Inne urządzenia działały dobrze, ale w moim telefonie problem nadal występował. Potem zdałem sobie sprawę, że przypadkowo zduplikowałem plik układu
layout-v26
i robiłem zmiany w tym pliku, dlatego projekt nie był aktualizowany. Więc właśnie usunąłem zduplikowany układ z plikuProject>app>main>res>layout-v26
i problem został rozwiązany. Dlatego upewnij się, że nie utworzyłeś żadnego z tych plików bez wiedzy.źródło
Możesz zrozumieć, czy kod jest wdrożony, czy nie, umieszczając punkt przerwania debugowania w nowym dodanym wierszu. Jeśli na punkcie przerwania znajduje się krzyżyk, oznacza to, że nie został wdrożony. Musisz wyczyścić i odbudować projekt.
źródło