एंड्रॉइड स्टूडियो ऐप में परिवर्तन को तैनात नहीं कर रहा है


96

कभी-कभी विकसित होते समय यह परिदृश्य होता है। मैं अपने स्रोत कोड में बदलाव करूंगा, सभी को बचाऊंगा और फिर चलाऊंगा लेकिन परिवर्तन जाहिरा तौर पर ऐप में नहीं दिखाई देगा - (मैं परीक्षण के लिए एक उपकरण का उपयोग कर रहा हूं)। मैं अपने डिवाइस पर ऐप को अनइंस्टॉल भी कर सकता हूं, और फिर से हिट कर सकता हूं और नए इंस्टॉल किए गए ऐप ने अभी भी स्रोत कोड में परिवर्तन को प्रतिबिंबित नहीं किया है। जब ऐसा होता है तो मुझे स्रोत को, हिट रन को संपादित करना पड़ता है और हो सकता है कि तब मेरे द्वारा अपेक्षित परिवर्तनों के साथ एक नया संस्करण डिवाइस पर होगा।

मैंने यहां समाधान की कोशिश भी की, लेकिन यह अक्सर काम नहीं करता है।

एंड्रॉइड स्टूडियो - बिना किसी नए बदलाव के मेरे ऐप को दिखाता है


कृपया इसे और इस उत्तर की जाँच करें
अमित वाघेला

क्या आपको इस समस्या का समाधान मिला है? मैंने इससे पहले सामना किया है, और साफ़ करें, पुनर्निर्माण करें, या बस फिर से शुरू करें एंड्रॉइड स्टूडियो ने काम किया है। लेकिन आज, कुछ भी नहीं इसे हल करने के लिए लगता है। मैं स्टूडियो की स्थापना रद्द कर रहा हूं और इसे फिर से इंस्टॉल करने जा रहा हूं और देखूंगा कि क्या कुछ बदलता है। मुझे विश्वास नहीं होता कि यह एक इंस्टेंट रन समस्या है। मुझे संदेह है कि यह मैन्युअल इंस्टॉलेशन के बाद होने लगता है जो मैंने आज adbटर्मिनल से इस्तेमाल किया था । चीजें जो मैंने आज़माई हैं: - स्वच्छ, पुनर्निर्माण, अमान्य कैश और पुनः आरंभ करें स्टूडियो - बल रोकें, डेटा को साफ़ करें और डिवाइस से ऐप को अनइंस्टॉल करें - कंप्यूटर और डिवाइस को फिर से शुरू करें
गेब्रियल गुलेर्ट

जवाबों:


74

मुझे भी यही समस्या हुई है। जब मैंने इसके लिए खोज की तो यह धागा पहले पॉप अप हुआ। तत्काल रन सुविधा का उपयोग न करके इसे (उम्मीद के मुताबिक) हल किया। सबसे अच्छा समाधान नहीं हो सकता है, लेकिन यह अभी के लिए काम करता है।

बस "फाइल -> सेटिंग्स -> बिल्ड, एक्सेप्शन, डिप्लॉयमेंट -> इंस्टेंट रन" पर जाएं और इसे अक्षम करें। इसके साथ एंड्रॉइड स्टूडियो हर बार स्क्रैच से निर्माण करता है लेकिन यह इसे सही तरीके से नहीं बनाने से बेहतर है।

मिनी रैंट: एंड्रॉइड स्टूडियो का लगभग प्रत्येक संस्करण एक कष्टप्रद बग के साथ आता है। वे संस्करण 2 को रिलीज़ करने वाले हैं लेकिन इसका बीटा अभी भी छोटा है। मुझे आशा है कि वे निकट भविष्य में आईडीई को स्थिर करेंगे।


3
मैं एंड्रॉइड स्टूडियो 2.1 का उपयोग कर रहा हूं और मेरे पास अभी भी एक ही मुद्दा है। एकमात्र समाधान तत्काल रन को अक्षम करना था :(
radu_paun

5
यह समस्या "इंस्टेंट रन" के साथ भी अक्षम है, काफी कष्टप्रद है !!! २.१.२ के रूप में। 'स्वच्छ' मदद करता है ...
pvllnspk

1
अगर किसी और को भी इसकी तलाश है, तो ओएस एक्स पर आप इसे नीचे पा सकते हैंFile -> Preferences -> Build, Execution, Deployment
जियान लुका स्कोकिया

मुझे लगता है कि इंस्टेंट रन को डिसेबल करना एक अच्छा उपाय नहीं है। इसके बहुत सारे फायदे हैं और सिर्फ एक बग है।
मिलाद फरीदनिया

3
मैं इंस्टैंट रन अक्षम के साथ एंड्रॉइड स्टूडियो 3.2 कैनरी 13 का उपयोग कर रहा हूं और यह मुद्दा अभी भी कायम है।
mr5

95

EDIT2 (2020-03-09)

यदि आप अपने gradle-wrapper.properties में gradle 6.0 का उपयोग कर रहे हैं, तो आप एक समान स्थिति का सामना भी कर सकते हैं क्योंकि 6.0 संस्करण में यह बग है। इसके बजाय 6.0.1 का प्रयास करें।


कल (2018-03-27) एंड्रॉइड स्टूडियो ने 3.0.1 से 3.1 तक एक आधिकारिक अपडेट प्रकाशित किया, और ऐसा लगता है कि बहुत से लोग (मेरे सहित) इस मुद्दे पर फिर से चलना शुरू कर देते हैं।

नीचे # 5 टिप्पणी का श्रेय , नीचे दिया गया है कि यह कैसे हल किया गया है:

Android Studio में, Run> पर जाएं Edit Configuration

के तहत Before launch:, यदि आप नहीं पा सकते हैं, तो Gradle-aware Makeनीचे की तरह:

यहां छवि विवरण दर्ज करें

खाली जोड़ें Gradle-aware Makeऔर छोड़ें Task

यहां छवि विवरण दर्ज करें

चेतावनी : मुझे नहीं पता कि इन क्रियाओं का क्या अर्थ है, और क्या इससे कोई दुष्प्रभाव होगा। अगर कोई इस पर अधिक स्पष्टीकरण दे सकता है तो सराहना करें!

संपादित करें

@ChristopherSmit संदर्भित के लिए धन्यवाद, इस पृष्ठ में उल्लेख किया गया है Gradle-aware makeकि "परियोजना को संकलित करें और ग्रेडल चलाएं"।
पहले तो मुझे लगता है Runकि अगर कोड में कोई बदलाव नहीं किया गया है तो भी इसमें अधिक समय लग सकता है; लेकिन परीक्षण के बाद, दूसरी बार अभी भी बहुत तेजी से है अगर कोई कोड नहीं बदला गया है।
उस तथ्य को देखते हुए कि यह एक डिफ़ॉल्ट विकल्प है यदि आप एएस 3.1 का उपयोग करके एक नया प्रोजेक्ट बनाते हैं, तो मुझे लगता है कि यह कॉन्फ़िगरेशन बहुत सुरक्षित है।


1
इसका विवरण आपको यहां मिलेगा: developer.android.com/studio/run/rundebugconfig.html । नीचे दी गई तालिका में "ऑपरेशन शुरू करने से पहले परिभाषित करें"
क्रिस्टोफर स्मिट

धन्यवाद! मैंने अपने कोड को ठीक करने में 24 घंटे से अधिक समय बर्बाद किया है और सोच रहा हूं कि कोड परिवर्तन क्यों काम नहीं कर रहा है। मुझे अंदाजा नहीं था कि ऐसा भी कुछ है।
भावेश बंसल

काम नहीं कर रहा: निर्भरता पैदा करते समय त्रुटि विभाजन APK com.android.ide.common.process.ProcessException: aapt निष्पादित करने में विफल
android51130

1
@ android51130 वास्तव में मुझे यहां "बड़ा पोस्ट" मिला । तुरंत चलाने में अक्षम लगता है।
सिरा लाम

@SiraLam "रन" अक्षम तत्काल रन के साथ ठीक काम करता है, समस्या "wtf यहाँ चल रहा है" स्टूडियो 3.1 में तत्काल रन के साथ है। मुझे तत्काल रन चाहिए, और आप भी :)))
android51130

40

एंड्रॉइड स्टूडियो 2.0.0 का उपयोग करते हुए मुझे एक ही समस्या थी, इसे मेरी परियोजना के पुनर्निर्माण के द्वारा हल किया गया ।

Build > Rebuild Project

जीयूआई पिक्चर

या द्वारा क्लीन एंड रेरन

Run > Clean and Rerun

स्वच्छ और Rerun


जब भी मैं अपनी XML फ़ाइलों में कुछ बदलाव करता हूं तो क्या मुझे हर बार ऐसा करने की आवश्यकता है? जैसा कि मैं देख सकता हूं कि जब भी मैं एनिमेशन एक्सएमएल फाइल में बदलाव करता हूं। यह नए परिवर्तनों को तब तक तैनात नहीं करता है जब तक मैं फिर से साफ नहीं करता और ऐप को फिर से तैयार नहीं करता
Jigar

यही समस्या है - इसे हर परिवर्तन के साथ करना है। Google आओ, इस गंदगी को ठीक करें- बचाने, बनाने और तैनात करने के लिए "रन" बनाएं।
NBApps

10
2018 - 3.2.0 के रूप में और हमें अभी भी इससे निपटना है
एंड्रॉइडर्स

2
मैं एएस 3.0 से 3.1 तक अपडेट करने के बाद इस समस्या में गंभीरता से भाग रहा हूं। मुझे हर बार परियोजना का पुनर्निर्माण करना है ....
सिरा लाम

4
3.0 से 3.1 तक एएस को अपडेट करने के बाद एक ही मुद्दा।
बैंडजियो

11

जब तक मुझे एहसास हुआ कि मेरे बदलावों को सभी प्रासंगिक फाइलों तक प्रचारित नहीं किया जाना चाहिए, तब तक यह एक वास्तविक स्टॉपर था ...

यदि आप लेआउट से परेशान हैं, तो जैसा कि मैं था, आपको लग सकता है कि आपको res> layout-v17 फ़ोल्डर में लेआउट को अपडेट करने की आवश्यकता है । मैंने लेआउट फ़ोल्डर में डिज़ाइन दृश्य के माध्यम से परिवर्तन किए थे और उन परिवर्तनों को लेआउट-वी 17 में स्वचालित रूप से प्रचारित किया गया था था। हालाँकि, बाद में WEREN'T बदल जाता है।

अपने रेस> लेआउट-वी 17 फ़ोल्डर की जांच करें और देखें कि क्या उस फ़ोल्डर में .xml फाइलें आपके Res> लेआउट में दिखाई देने वाले परिवर्तनों को दर्शाती हैं फ़ोल्डर । आप शायद पाएंगे कि वे नहीं करते हैं। इसे ठीक करें और फिर से तैनात करें। मेरी तरह, आपको नया कोड मॉड देखना चाहिए।

उम्मीद है की यह मदद करेगा।


2

अभी के लिए मैंने ऐप को बंद करके समस्या को हल किया और फिर से चलाया। इसने एक जादू की तरह काम किया। यकीन नहीं है कि अगर यह एक संयोग है, लेकिन मुझे लगता है कि यह एक कोशिश दे इसके लायक है।

मैं वास्तव में आश्चर्यचकित हूं अगर यह कुछ अन्य लोगों को भी काम करता है। आओ हम इसे आजमाएँ और मुझे बताएं।


प्रतिक्रिया-मूलक ऐप के लिए, समाधान को प्रतिक्रिया पैककर्ता को छोड़ना और वापस लेना था
माइक

2

एंड्रॉइड स्टूडियो में 3.6.3 यदि आप तत्काल रन विफल होते हैं, तो आप ऑटो पुनरारंभ को सक्षम कर सकते हैं।

बस फ़ाइल पर जाएँ | सेटिंग्स | निर्माण, निष्पादन, तैनाती | तैनाती और चेकबॉक्स की जांच करें।

समायोजन


1

इसके अलावा मुझे इंस्टेंट रन सुविधा का उपयोग न करके इसे हल किया। सबसे अच्छा समाधान नहीं हो सकता है, लेकिन यह अभी के लिए काम करता है। मैं एंड्रॉइड स्टूडियो 2.0 बीटा 2 का उपयोग कर रहा हूं ...


1
कृपया अपने उत्तरों के बारे में विस्तार से बताएं ताकि अन्य उपयोगकर्ता लाभान्वित हो सकें ... कदम से कदम
मिलाएं

4
किसी और ने उत्तर के रूप में पहले ही पोस्ट कर दिया है। एक बार फिर से पोस्ट करने के बजाय, पर्याप्त उत्तर देने के बाद मौजूदा उत्तर पर विचार करें।
ओहबे वाइज

1

मेरे लिए तत्काल रन एक बुरा सपना था, 2-5 मिनट का निर्माण समय, और अक्सर, हाल के बदलावों को बिल्ड में शामिल नहीं किया गया था। मैं तत्काल रन को अक्षम करने और इस लाइन को gradle.properties में जोड़ने की सलाह देता हूं:

android.enableBuildCache=true

पहले बिल्ड में अक्सर बड़ी परियोजनाओं (1-2mins) के लिए कुछ समय लगता है, लेकिन बाद में कैश होने के बाद आमतौर पर हल्की रातें तेज होती हैं (<10secs)।

यह मिल गया Reddit user / u / QuestionsEverythang से टिप को प्राप्त करें जिसने मुझे तत्काल रन के साथ चारों ओर बहुत परेशान कर दिया है!


1

सुनिश्चित करें कि आपके पास वैकल्पिक लेआउट नहीं है। यदि आप करते हैं, तो आप एक को बदल सकते हैं और दूसरे को तैनात कर सकते हैं।


0

23 से buildVersion को उन्नत करने के बाद समान समस्या उत्पन्न होने लगी। AVDs को हटाने की कोशिश की और ग्रेडिंग फाइल्स के साथ सिंकिंग को फिर से बनाया। कुछ भी मदद नहीं की। Andriod स्टूडियो की पूरी पुनर्स्थापना ने समस्या को ठीक कर दिया है। यह समाधान नहीं हो सकता है, लेकिन यह केवल मेरे लिए काम करता है।


0

मेरे लिए काम करने वाली बात यह थी कि मेरे लेआउट xml फ़ाइलों में से एक में कुछ खराब xml जोड़ा गया, एक त्रुटि बनाने और प्राप्त करने का प्रयास किया गया, फिर परिवर्तन और डीबग फिर से करें। सुंदर नहीं है, लेकिन बहुत तेज है।

एक और चीज जो ज्यादातर समय काम करती लगती है: अपने विकास फोन / डिवाइस को अनप्लग करें और फिर से कनेक्ट करें। यह कम से कम मेरी लिनक्स मशीन पर एक पुनर्स्थापना के लिए मजबूर करता है।


0

आई लाइक इंस्टेंट रन फ़ीचर और मुझे इस बग के कारण इसे निष्क्रिय करना पसंद नहीं है। समाधान नहीं है लेकिन एक बेहतर समाधान के रूप में मैं इसे पसंद करूंगा:

  1. प्रेस "हाल के ऐप्स"
  2. बस सूची से मेरे एप्लिकेशन को बंद करें
  3. फिर से ऐप चलाएं

इसमें क्लीन या रिबिल्ड की तुलना में कम समय लगता है ।

अपडेट करें

Rerun एप्लिकेशन भी काम करता है:

यहां छवि विवरण दर्ज करें


0

मेरे पास एक ही मुद्दा है, मैंने तुरंत रन को अनचेक किया और मैंने "क्लीन एंड रन विकल्प" की कोशिश की, लेकिन इसके काम नहीं कर रहा था। मैंने इसे सिंक करने की कोशिश की, लेकिन फिर भी मेरे पास यह मुद्दा था। इसका समाधान केवल तभी हो जाता है जब मैं बिल्ड फ़ोल्डर को हटाकर इसे पूरी तरह से पुनर्निर्माण करता हूं।


0

मेरे पास एक ही मुद्दा था, मैंने साफ और पुनर्निर्माण, ग्रेड-सिंक, यहां तक ​​कि ऐप को अनइंस्टॉल करने और स्थापित करने जैसे सभी कामों की कोशिश की, लेकिन काम नहीं किया। अन्य डिवाइस ठीक काम कर रहे थे लेकिन मेरे मोबाइल में समस्या अभी भी चल रही थी। तब मुझे एहसास हुआ कि मैं गलती से एक डुप्लिकेट लेआउट फ़ाइल layout-v26था और उस फ़ाइल में परिवर्तन कर रहा था कि डिज़ाइन अपडेट क्यों नहीं कर रहा था। इसलिए मैंने अभी से डुप्लिकेट लेआउट को हटा दिया Project>app>main>res>layout-v26और समस्या हल हो गई। तो कृपया सुनिश्चित करें कि आपने इनमें से किसी भी फाइल को बिना साकार किए बनाया है।


-1

आप समझ सकते हैं कि आपने जो नई लाइन जोड़ी है उसमें डिबग ब्रेकपॉइंट लगाकर कोड तैनात किया गया है या नहीं। यदि ब्रेकपॉइंट पर एक क्रॉस है, तो इसका मतलब यह तैनात नहीं है। आपको प्रोजेक्ट को साफ और पुनर्निर्माण करने की आवश्यकता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.