2011-08-25 5 views
50

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

उत्तर

154

हाँ, आप एक विशेष पर एक apk स्थापित कर सकते हैं मार्गदर्शन के लिए कड़ी है डिवाइस।

आदेश में, प्रकार:

adb devices 
// list of devices and its unique ID... 

तो टाइप करें:

adb -s "<deviceIDfromlist>" install "<path-to-apk>" 
+0

डिवाइस आईडी का मतलब उस नंबर का है ?? जो डिवाइस पर 5554 या 5556 की तरह दिखाई देता है ... जैसा ??? –

+2

हां, एडीबी डिवाइस –

+0

निष्पादित करने के बाद आप जो नंबर प्राप्त कर रहे हैं, धन्यवाद। मैं समझ गया। लेकिन क्या यह "deviceIDfromlist" है कि डिवाइस नंबर 5554 या 5556 के रूप में सूचीबद्ध है या ऐसा है ?? या कुछ अलग संख्या ?? –

7

चरण 1: डिवाइस जाओ

एडीबी उपकरणों

चरण 2 डिवाइस से कनेक्ट सभी डिवाइस आईडी : विशेष डिवाइस पर स्थापित करें ypu

स्थापित करना चाहते हैं

चरण 1:

C: \ एंड्रॉयड \ android-SDKs \ मंच उपकरण> एडीबी उपकरणों उपकरणों की सूची संलग्न एमुलेटर 363,210

एडीबी -s पथ + apk

उदाहरण स्थापित DeviceID -5554 डिवाइस 014FD87107021017 डिवाइस

चरण 2:

C: \ एंड्रॉयड \ android-SDKs \ मंच उपकरण> एडीबी -s 014 एफडी 87107021017 सी स्थापित करें: \ उपयोगकर्ता \ उपयोगकर्ता \ दस्तावेज़ \ appname.apk

+0

धन्यवाद @Happy विक्की सटीक मैं चाहता हूँ इस –

+0

हम क्रमिक रूप से – Vinayak

+0

धन्यवाद वास्तव में सहायक – Simon

4

एकाधिक डिवाइस/अनुकरणकर्ताओं पर एपीके स्थापित करने के लिए निम्न स्क्रिप्ट का उपयोग करें।

for SERIAL in $(adb devices | grep -v List | cut -f 1); 
    do adb -s $SERIAL install -r /path/to/product.apk; 
    done 

निकालें- अगर आप एपीके को पुनर्स्थापित नहीं कर रहे हैं। इसके अलावा आप "install -r /path/to/product.apk" को अन्य एडीबी कमांड्स जैसे एक एकल डिवाइस पर काम करने की जगह ले सकते हैं।

यह वास्तविक उपकरणों पर मेरे लिए काम करता है लेकिन मेरा मानना ​​है कि इसे अनुकरणकर्ताओं के लिए भी काम करना चाहिए।

6

सभी कनेक्टेड डिवाइसों पर एक साथ इंस्टॉल कमांड जारी करना संभव है।

कुंजी एक अलग प्रक्रिया में adb लॉन्च करना है()।

मैं निम्न स्क्रिप्ट के साथ आया था मेरा कनेक्ट किए गए डिवाइस के सभी पर एक साथ आग बंद स्थापना और अंत में इनमें से प्रत्येक पर आवेदन शुरू स्थापित:

#!/bin/sh 

function install_job { 

    adb -s ${x[0]} install -r PATH_TO_YOUR_APK 
    adb -s ${x[0]} shell am start -n "com.example.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER 

} 


#iterate over devices IP-addresses or serial numbers and start a job 

while read LINE 
do 
    eval x=($LINE) 
    install_job ${x[0]} > /dev/null 2>&1 & 
done <<< "`adb devices | cut -sf 1`" 

echo "WATING FOR INSTALLATION PROCESSES TO COMPLETE" 
wait 

echo "DONE INSTALLING" 

नोट 1: STDOUT और एसटीडीईआरआर दबाया जाता है। आपको कोई भी "adb इंस्टॉल" ऑपरेशन परिणाम नहीं दिखाई देगा। यह बेहतर हो सकता है, मुझे लगता है, अगर आपको वास्तव में

नोट 2: आप हार्डकोडेड पथ और गतिविधि नामों के बजाय तर्क प्रदान करके स्क्रिप्ट को भी सुधार सकते हैं।

इस तरह आप:

  1. मैन्युअल रूप से प्रत्येक डिवाइस पर स्थापित
  2. एक के लिए इंतजार नहीं करना पड़ेगा आदेश एक दूसरे से निष्पादित करने के लिए में समाप्त करने के लिए स्थापित प्रदर्शन करने के लिए (एडीबी कार्य का शुभारंभ कर रहे हैं नहीं है समानांतर में)
+0

मैं सराहना सभी आदेशों करने के लिए कुछ पाइपलाइनिंग या स्क्रिप्ट का उपयोग करना चाहिए अपने जवाब। लेकिन हॉटवेस्पीसी मैंने जो पूछा है उसके लिए सही है। मैंने अपना प्रश्न भी अपडेट किया है ताकि दूसरे के पास जो भी पूछ रहा है उसके लिए गलत संकेत न हो। जवाब के लिए वास्तव में धन्यवाद।मेरी ओर से आपके उत्तर में +1 क्योंकि यह किसी अन्य तरीके से भी मदद करता है। –

+0

प्रतिक्रिया के लिए धन्यवाद, मैंने जवाब – Drew

+0

को सही किया है यदि कोई व्यक्ति एपीके फ़ाइल को एक बार में स्थापित करना चाहता है तो आपका उत्तर सही है ... –

0

यूएसबी डिबगिंग का उपयोग करके आप एक ही समय में कई डिवाइसों पर इंस्टॉल कर सकते हैं।

ग्रहण रन -> रन कॉन्फ़िगरेशन -> अपनी परियोजना (बाईं ओर) -> लक्ष्य -> ​​सभी संगत उपकरणों पर लॉन्च करें।

चयनित प्रोजेक्ट सभी कनेक्टेड डिवाइसों पर स्थापित किया जाएगा

संबंधित मुद्दे