एंड्रॉइड स्टूडियो में स्वचालित रूप से कई उपकरणों पर एक ऐप चलाएं


112

मेरे पास कंप्यूटर से जुड़े कई एंड्रॉइड डिवाइस हैं। जब मैं अपने द्वारा विकसित किए जा रहे ऐप को चलाने का प्रयास करता हूं, तो Android स्टूडियो मुझे हमेशा डिवाइस चुनने के लिए प्रेरित करता है। क्या स्वचालित रूप से रन पर क्लिक करके या शॉर्टकट के साथ बेहतर तरीके से कई उपकरणों पर ऐप को तैनात करने का कोई तरीका है?


संभवत: आप adb शेल amकमांड का उपयोग कर सकते हैं, जिसे आप एंड्रॉइड डॉक्स में या यहां कई प्रश्नों में पा सकते हैं, xargs जैसी किसी चीज का उपयोग करें या सभी उपकरणों पर पुनरावृति करने के लिए लूप के लिए, और फिर स्क्रिप्ट को चलाने के लिए IDE कॉन्फ़िगर करें कस्टम बटन या मेनू। यदि आप भी (पुनः) स्थापित होने की उम्मीद कर रहे हैं, तो आपको adb install -r somefile.apkपहले अपनी स्क्रिप्ट की आवश्यकता होगी ।
क्रिस स्ट्रैटन

जवाबों:


304

यह वास्तव में लगभग आसान है। जब आप ऐप लॉन्च करने के बाद उपकरणों की सूची देखते हैं, तो बस उस डिवाइस को शिफ्ट या नियंत्रित करें जिसे आप लॉन्च करना चाहते हैं। बस इसे दुर्घटना से पता चला। आशा करता हूँ की ये काम करेगा।


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

आप किस विचारधारा के चल रहे हैं? यदि आप नवीनतम नहीं चला रहे हैं तो आपको अपडेट करना चाहिए।
डैमकॉल

यदि आप शिफ्ट शिफ्ट करते हैं, तो सभी डिवाइस चुनें, और आप "अगली बार उसी डिवाइस पर रन करें" पर क्लिक करें, भले ही वह "बहुवचन" डिवाइस न लगाए "यह स्वचालित रूप से सभी अगली बार चलेगा।
OWADVL

क्या मैक पर ऐसा करने का कोई तरीका है? मैं कई उपकरणों का चयन करने में सक्षम नहीं था।
बंदूकधारी

12
ओह, मुझे बस एहसास हुआ कि मैं ऐप्स को डिबग करने की कोशिश कर रहा था, रन नहीं। एएस मल्टी डिवाइस को चलाने की अनुमति देता है लेकिन डिबग सिर्फ एक।
बंदूकधारी

30

नए उपयोगकर्ताओं के लिए, एंड्रॉइड स्टूडियो 2 में, आपको सेटिंग्स में "इंस्टेंट रन" को अक्षम करने की भी आवश्यकता है-> बिल्ड, निष्पादन, तैनाती-> इंस्टेंट रन। इंस्टेंट रन देखें ।

इंस्टेंट रन के साथ, आप केवल समय पर एक डिवाइस के साथ काम कर सकते हैं।

अपडेट करें

एंड्रॉइड स्टूडियो 2.1 में, समय पर कई उपकरणों में चलने पर यह स्वचालित रूप से अक्षम हो जाता है।

कई उपकरणों के लिए तैनात

इंस्टेंट रन हॉट, वार्म और कोल्ड स्वैप करने के लिए विभिन्न तकनीकों का उपयोग करता है जो कि लक्ष्य डिवाइस के एपीआई स्तर के लिए विशिष्ट हैं। इस कारण से, एक बार में कई उपकरणों के लिए एक ऐप को तैनात करते समय, एंड्रॉइड स्टूडियो अस्थायी रूप से इंस्टेंट रन को बंद कर देता है।


1
एंड्रॉइड स्टूडियो 2.3, यह या पिछले उत्तरों में से कोई भी काम नहीं करता है। मैं वास्तव में उम्मीद कर रहा हूं कि इसके लिए एक समाधान है।

6

मुझे एंड्रॉइड स्टूडियो का नया अपडेट मिला है जो एंड्रॉइड स्टूडियो 3.5 है

Android Studio 3.5
Build #AI-191.8026.42.35.5791312, built on August 9, 2019
JRE: 1.8.0_202-release-1483-b03 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Windows Server 2016 10.0

इस अद्यतन में उन्होंने कई उपकरणों पर एप्लिकेशन चलाने के लिए इन-बिल्ट विकल्प जोड़ा है।

आईडीई में एक नया ड्रॉप-डाउन मेनू है जो आपको जल्दी से यह चुनने की सुविधा देता है कि आप किस डिवाइस को अपने ऐप को तैनात करना चाहते हैं। इस मेनू में एक नया विकल्प भी शामिल है जो आपको एक ही बार में कई उपकरणों पर अपना ऐप चलाने की सुविधा देता है।

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

एंड्रॉइड स्टूडियो के नए संस्करण को अपडेट करें और आनंद लें।


15
दुर्भाग्य से, यह आपके चयन को याद नहीं करता है, इसलिए आपको हर बार आपके द्वारा चलाए जाने वाले समय को फिर से आकार देने की आवश्यकता है।
रयान आर

13
हाँ, यह अद्यतन मैं यहाँ हूँ कारण है। यह इसे बदतर बनाता है, क्योंकि वर्कअराउंड और याद रखना अब काम नहीं करता है। चलिए 3.6 कैनरी रिलीज़ नोट्स :-)
क्रिश्चियन रुपर्ट

हां, पहले ऐसा नहीं था, एक फॉलो अप के लिए यहां देखें: stackoverflow.com/questions/57613864/…
क्रिश्चियन रुपर्ट

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

5

बस एक बिंदु के रूप में, यदि आप कई उपकरणों पर अपने परीक्षण चलाना चाहते हैं, तो आप एक परीक्षण प्रोफ़ाइल के लिए डिवाइस चयनकर्ता संवाद में कई उपकरणों का चयन नहीं कर सकते। इसके बजाय, आपको gradle कमांड चलाने की आवश्यकता है connectedCheck। यह जुड़े हुए सभी उपकरणों पर आपके परीक्षण चलाता है। इसके लिए कोई एम्बेडेड UI नहीं है (जैसे कि आप किसी एकल डिवाइस पर परीक्षण चला रहे हैं), लेकिन यह परीक्षण सारांश के साथ स्थानीय रूप से जेनरेट की गई HTML फ़ाइल का लिंक प्रदान करता है।

आप कमांड लाइन से, या एएस के भीतर, Gradle projectsऐप के तहत विंडो में देख सकते हैं: ऐप (या रूट प्रोजेक्ट) -> कार्य-> सत्यापन।

Ref: https://stackoverflow.com/a/18592367/1544046 : एमुलेटर के लिए वर्णन करता है, लेकिन उपकरणों के लिए भी काम करता है


0

एंड्रॉइड स्टूडियो के रूप में। 2.3.3 इंस्टेंट रन का उपयोग अक्षम करें मेनू रन-> ऐप चलाएं (विंडोज़ शिफ्ट में + उस डिवाइस के लिए क्लिक करें जिसे आप तैनात करना चाहते हैं)

यदि आप रन-> डिबग ऐप का उपयोग करते हैं तो आप कई उपकरणों पर लागू नहीं हो सकते


0

हर बार सभी कनेक्टेड डिवाइस को चलाना आसान है। बस सभी कनेक्टेड डिवाइस का चयन करें, जबकि एंड्रॉइड स्टूडियो डिपॉजिट टारगेट का चयन करें और "भविष्य के लॉन्च के लिए समान चयन का उपयोग करें" का चयन करें।

एनबी याद रखें सभी डिवाइस एक-एक करके क्रमिक रूप से चलते हैं।

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


0

एंड्रॉइड स्टूडियो में 3.5। कई उपकरणों पर चलाएँ।

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


1
यह अभी भी कई उपकरणों पर मेरे चयन को याद नहीं करता है
Anbuselvan Rocky

0

एंड्रॉइड स्टूडियो 3.5+ में कई उपकरणों को क्रमिक रूप से चुनने और चलाने के दौरान एक समस्या है:

टिकट: https://issuetracker.google.com/issues/140056248

जब तक Google इस समस्या को ठीक नहीं करता है, तब तक हमें प्रतीक्षा करने की आवश्यकता है।

यदि आपको इस संस्करण की आवश्यकता है, तो एंड्रॉइड स्टूडियो 3.5 और उसके नीचे का उपयोग करें।


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