Android Studio değişiklikleri uygulamada dağıtmıyor


96

Bazen bu senaryo geliştirme sırasında ortaya çıkar. Kaynak kodumda bir değişiklik yapar, tümünü kaydet seçeneğine basıp ardından çalıştırırdım, ancak değişiklik görünüşe göre uygulamaya yansıtılmaz - (test için bir cihaz kullanıyorum). Hatta uygulamayı cihazımdan kaldırabilirim ve tekrar çalıştır'a basabilirim ve yeni yüklenen uygulama hala kaynak kodundaki değişikliği yansıtmadı. Bu olduğunda, kaynağı düzenlemeliyim, çalıştır'a basmalıyım ve belki sonra cihazda beklediğim değişikliklerle yeni bir sürüm olacaktır.

Çözümü burada da denedim, ancak pek işe yaramıyor gibi görünüyor.

Android Studio - Uygulamamı yeni değişiklikler olmadan dağıtır


lütfen bunu ve bu yanıtı kontrol edin .
Amit Vaghela

Bu soruna geçici bir çözüm buldunuz mu? Bununla daha önce karşılaştım ve Clear, Rebuild veya sadece Android Studio'yu yeniden başlatın. Ama bugün HİÇBİR ŞEY bunu çözemiyor gibi görünüyor. Studio'yu kaldırıyorum ve tekrar kuracağım ve bir şeylerin değişip değişmediğine bakacağım. Bunun bir Anında Çalıştırma sorunu olduğuna inanmıyorum. Bugün adbterminalden kullanarak yaptığım manuel bir kurulumdan sonra olmaya başladığından şüpheleniyorum . Denediğim şeyler: - önbellekleri temizleyin, yeniden oluşturun, geçersiz kılın ve Studio'yu yeniden başlatın - durdurmaya zorlayın, verileri temizleyin ve uygulamayı cihazdan kaldırın - bilgisayarı ve cihazı yeniden başlatın
Gabriel Gularte

Yanıtlar:


74

Bende de aynı sorun var. Bu ileti dizisi ilk aradığımda ortaya çıktı. Anında Çalıştır özelliğini kullanmayarak çözdüm (umarak). En iyi çözüm olmayabilir ama şimdilik işe yarıyor.

"Dosya -> Ayarlar -> Oluşturma, Yürütme, Dağıtım -> Anında Çalıştırma" seçeneğine gidin ve devre dışı bırakın. Bu Android Studio ile her seferinde sıfırdan kurulur, ancak doğru şekilde oluşturmamaktan daha iyidir.

Mini rant: Android Studio'nun neredeyse her sürümünde can sıkıcı bir hata var. Sürüm 2'yi yayınlamak üzereler ancak beta sürümü hala hatalı. Umarım yakın gelecekte IDE'yi stabilize ederler.


3
Android Studio 2.1 kullanıyorum ve hala aynı sorunu yaşıyorum. Tek çözüm, anlık çalışmayı devre dışı
bırakmaktı

5
Oldukça can sıkıcı olan "Anında Çalıştırma" devre dışıyken bile bu sorunu yaşayın !!! AS 2.1.2. 'Temiz' yardımcı olur ...
pvllnspk

1
Başka biri de arıyorsanız, OS X'te, altında bulabilirsinizFile -> Preferences -> Build, Execution, Deployment
Gian Luca Scoccia

Anında çalıştırmayı devre dışı bırakmanın iyi bir çözüm olmadığını düşünüyorum. Çok fazla faydası ve tek bir hatası var.
Milad Faridnia

3
Android Studio 3.2 Canary 13'ü Anında Çalıştırma devre dışıyken kullanıyorum ve bu sorun hala devam ediyor.
mr5

95

DÜZENLEME2 (2020-03-09)

Gradle-wrapper.properties dosyanızda gradle 6.0 kullanıyorsanız, benzer bir durumla da karşılaşabilirsiniz çünkü 6.0 sürümünde bu hata vardır. Bunun yerine 6.0.1'i deneyin.


Dün (2018-03-27) Android Studio, 3.0.1'den 3.1'e resmi bir güncelleme yayınladı ve görünüşe göre birçok kişi (ben dahil) bu konuyla tekrar karşılaşmaya başlıyor.

Burada 5 numaralı yoruma kredi verin , aşağıda nasıl çözüldüğü:

Android Studio'da Run> seçeneğine gidin Edit Configuration.

Altında Before launch:, bulamazsanız Gradle-aware Make, aşağıdaki gibi:

görüntü açıklamasını buraya girin

Ekleyin Gradle-aware Makeve Taskboş bırakın.

görüntü açıklamasını buraya girin

Uyarı : Bu eylemin ne anlama geldiğini ve herhangi bir yan etkiye neden olup olmayacağını bilmiyorum. Birisi bu konuda daha fazla açıklama yapabilirse minnettar olun!

DÜZENLE

@ChristopherSmit başvurulan sayesinde, bu sayfayı bahseder Gradle-aware makearacı "Derleme projesi ve çalıştırmak Gradle".
İlk başta Run, hiçbir kod değiştirilmese bile bu işlemin daha uzun zaman alacağını tahmin ediyorum ; ancak testten sonra, eğer hiçbir kod değiştirilmediyse ikinci sefer daha hızlıdır.
AS 3.1 kullanarak yeni bir proje oluşturursanız, bunun varsayılan bir seçenek olduğu göz önüne alındığında, bu yapılandırmanın oldukça güvenli olduğunu düşünüyorum.


1
Bunun açıklamasını burada bulabilirsiniz: developer.android.com/studio/run/rundebugconfig.html . Aşağıdaki tabloda "Lansman öncesi işlemleri tanımlayın"
Christopher Smit

Teşekkür ederim! Kodumu düzeltmek ve bu kod değişikliğinin neden çalışmadığını merak etmek için 24 saatten fazla zaman harcadım. Bunun gibi bir şey olduğu hakkında hiçbir fikrim yoktu.
Bhavesh Bansal

ÇALIŞMIYOR: Bağımlılıklar oluşturulurken hata bölünmüş APK com.android.ide.common.process.ProcessException: aapt yürütülemedi
android51130

1
@ android51130 Aslında burada "daha büyük bir gönderi" buldum . Anında çalıştırmayı devre dışı bırakmak sorunu çözecek gibi görünüyor.
Sira Lam

@SiraLam "çalıştır" özelliği devre dışı anlık çalıştırmada iyi çalışıyor, sorun "burada wtf oluyor" Studio 3.1'de anlık çalıştırmadır. Anında koşmaya ihtiyacım var, sen de :)))
android51130

40

Android Studio 2.0.0 kullanarak aynı Sorunu yaşadım, Projemi yeniden oluşturarak çözdüm .

Build > Rebuild Project

GUI Resmi

veya Temizle ve Yeniden Çalıştır ile

Run > Clean and Rerun

Temizle ve Yeniden Çalıştır


XML dosyalarımda her değişiklik yaptığımda bunu her seferinde yapmam gerekir mi? Animasyon XML dosyasında her değişiklik yaptığımda görebildiğim gibi. Uygulamayı tekrar
temizleyip

sorun bu - bunu her değişiklikle yapmak zorunda kalmak .. google hadi, bu boku düzelt - kaydetmek, oluşturmak ve dağıtmak için "çalıştır" yap.
NBApps

10
2018 - AS 3.2.0 ve hala bununla uğraşmak zorundayız
Androiderson

2
AS 3.0'dan 3.1'e güncelledikten hemen sonra bu problemle ciddi bir şekilde uğraşıyorum. Her seferinde projeyi yeniden inşa etmem gerekiyor ....
Sira Lam

4
AS'yi 3.0'dan 3.1'e güncelledikten sonra aynı sorun.
Bandzio

11

Değişikliklerimin tüm ilgili dosyalara yayılmaması gerektiğini anlayana kadar bu gerçek bir engeldi ...

Düzenlerle sorun yaşıyorsanız, benim gibi, res> layout-v17 klasöründe düzeni güncellemeniz gerektiğini fark edebilirsiniz . Düzen klasöründe Tasarım Görünümü aracılığıyla değişiklikler yaptım ve bu değişiklikler başlangıçta otomatik olarak layout-v17'ye yayılıyor gibiydi . Ancak, daha sonraki değişiklikler OLMADI.

Res> layout-v17 klasörünüzü kontrol edin ve o klasördeki .xml dosyalarının res> layout klasörünüzde gördüğünüz değişiklikleri yansıtıp yansıtmadığına bakın . Muhtemelen olmadıklarını göreceksiniz. Bunu düzeltin ve yeniden dağıtın. Benim gibi, yeni kod modlarını görmelisiniz.

Bu yardımcı olur umarım.


2

Şimdilik uygulamayı kapatıp tekrar çalıştırarak sorunu çözdüm. Büyüleyici çalıştı. Henüz bir tesadüf olup olmadığından emin değilim, ama sanırım denemeye değer.

Başkalarının da işe yarayıp yaramadığını gerçekten merak ediyorum. Bir deneyelim ve bana haber verelim.


React-native bir uygulama için çözüm, react packager'ı kapatıp yeniden başlatmaktı
Mike Lyons

2

Android Studio 3.6.3'te, anında çalıştırma başarısız olursa otomatik yeniden başlatmayı etkinleştirebilirsiniz.

Dosyaya git | Ayarlar | Derleme, Yürütme, Dağıtım | Dağıtın ve onay kutularını işaretleyin.

Ayarlar


1

Ayrıca Anında Çalıştır özelliğini kullanmayarak da çözdüm. En iyi çözüm olmayabilir ama şimdilik işe yarıyor. Android Studio 2.0 beta 2 kullanıyorum ...


1
diğer kullanıcıların yararlanabilmesi için lütfen yanıtlarınız hakkında daha fazla ayrıntı verin ... adım adım ekleyin vb ...
Juan Boero

4
Başka biri bunu zaten bir cevap olarak yayınladı. Yeniden göndermek yerine, yeterli temsilciye sahip olduğunuzda mevcut yanıta olumlu oy vermeyi düşünün.
OhBeWise

1

Benim için anlık çalıştırma bir kabustu, 2-5 dakikalık derleme süreleriydi ve çıldırtıcı bir şekilde, son değişiklikler yapılara dahil edilmedi. Anında çalıştırmayı devre dışı bırakmanızı ve bu satırı gradle.properties'e eklemenizi şiddetle tavsiye ederim:

android.enableBuildCache=true

İlk derleme genellikle büyük projeler için biraz zaman alır (1-2 dakika), ancak önbelleğe alındıktan sonra sonraki derlemeler genellikle hafif gecede hızlıdır (<10sn).

Bu ipucunu reddit kullanıcısı / u / QuestionsEverythang'dan aldım , bu da beni anında çalıştırmayla ÇOK uğraşmadan kurtardı!


1

Alternatif bir düzene sahip olmadığınızdan emin olun. Eğer yaparsanız, birini değiştiriyor ve bir başkasını yerleştiriyor olabilirsiniz.


0

BuildVersion'ı 23'ten yükselttikten sonra aynı sorun oluşmaya başladı. AVD'leri kaldırmayı ve yeniden oluşturmayı, Gradle Files ile senkronize etmeyi denedim. Hiçbir şey yardımcı olmadı. Andriod Studio'nun tamamen yeniden yüklenmesi sorunu çözdü. Çözüm bu olmayabilir ama bu sadece benim için çalıştı.


0

Benim için işe yarayan şey, düzen xml dosyalarımdan birine bazı bozuk xml'ler eklemek, oluşturmaya ve bir hata almaya çalışmak, ardından değişikliği geri almak ve tekrar hata ayıklamaktı. Hoş değil ama oldukça hızlı.

Çoğu zaman işe yarayan başka bir şey: geliştirme telefonunuzu / cihazınızı çıkarın ve yeniden bağlayın. Bu, en azından Linux makinemde yeniden yüklemeye zorlanıyor gibi görünüyor.


0

Anında Çalıştırma Özelliğini seviyorum ve sırf bu hata yüzünden devre dışı bırakmayı sevmiyorum. Bir çözüm değil, ancak daha iyi bir çözüm olarak şunları tercih ederim:

  1. "Son Uygulamalar" a basın
  2. Uygulamamı listeden kapatmanız yeterli
  3. Uygulamayı tekrar çalıştırın

Bu, Temizle veya Yeniden Oluşturmaya göre daha kısa sürer .

GÜNCELLEME

Uygulamayı yeniden çalıştır şu şekilde de çalışır:

görüntü açıklamasını buraya girin


0

Aynı sorunu yaşıyorum, anında Çalıştır'ın işaretini kaldırdım ve ayrıca "temizle ve çalıştır seçeneğini" denedim ama çalışmıyor. Senkronize etmeye çalıştım ama yine de sorun yaşadım. Yalnızca, derleme klasörünü silerek tamamen yeniden oluşturursam çözülür.


0

Aynı sorunu yaşadım, temizleme ve yeniden oluşturma, kademeli senkronizasyon, hatta uygulamayı kaldırıp yükleme gibi her şeyi denedim ama işe yaradı. Diğer cihazlar iyi çalışıyordu ancak cep telefonumda sorun hala devam ediyordu. Sonra yanlışlıkla mizanpaj dosyası olduğumu fark ettim layout-v26ve bu dosyada tasarımın neden güncellenmediği için değişiklik yaptığımı fark ettim . Bu yüzden yinelenen düzeni öğesinden sildim Project>app>main>res>layout-v26ve sorun çözüldü. Bu nedenle, lütfen bu dosyaların hiçbirini fark etmeden oluşturmadığınızdan emin olun.


-1

Eklediğiniz yeni satıra bir hata ayıklama kesme noktası koyarak kodun konuşlandırılıp dağıtılmadığını anlayabilirsiniz. Kesme noktasında bir çarpı işareti varsa, bu dağıtılmadığı anlamına gelir. Projeyi temizlemeniz ve yeniden inşa etmeniz gerekiyor.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.