2016-03-12 8 views
125

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

List of devices attached 
192.168.59.101:5555 device 

अब तक मैंने पाया:

... 
04:54:40 E/adb: error: could not install *smartsocket* listener: Address already in use 
04:54:40 E/adb: ADB server didn't ACK 
04:54:40 E/ddms: '/Users/paulbrie/Library/Android/sdk/platform-tools/adb,start-server' failed -- run manually if necessary 
04:54:40 E/adb: * failed to start daemon * 
04:54:40 E/adb: error: cannot connect to daemon 
:app:installDebug FAILED 

FAILURE: Build failed with an exception. 

* What went wrong: 
Execution failed for task ':app:installDebug'. 
> com.android.builder.testing.api.DeviceException: Timeout getting device list. 
... 

हालांकि, adb devices रिटर्न इस: जब मैं react-native run-android चलाने मैं लांच आपरेशन के अंत में इस लाइनों मिल एमुलेटर। क्या किसी को भी एक ही समस्या का सामना करना पड़ा है?

धन्यवाद, पॉल

+0

यह त्रुटि जेनमोशन चलने के बावजूद हो सकती है। –

उत्तर

292

और अधिक शोध के बाद मैंने महसूस किया है कि Genymotion डिफ़ॉल्ट अपनी ही एडीबी द्वारा उपयोग करता है।

enter image description here

मैं अपने मुख्य एडीबी (समान प्रतिक्रिया देशी द्वारा प्रयुक्त) में स्विच करने और यह समस्या हल हो जाती। मुझे लगता है कि क्योंकि जेनिमोशन एडीबी पहले लॉन्च किया गया था, मुझे Address already in use त्रुटि संदेश मिला।

+4

इसे पोस्ट करने के लिए धन्यवाद।मुझे लगभग दिल का दौरा पड़ा, मैंने अपने एंड्रॉइड स्टूडियो 2.1 को कल रात 3 पूर्वावलोकन करने के लिए अद्यतन किया और जीनमोशन अब और कनेक्ट नहीं होगा। इससे मुझे इसे हल करने में मदद मिली। – Simon

+6

मैंने इस समाधान की कोशिश की, लेकिन मुझे अभी भी एक ही त्रुटि मिली है। क्या वैकल्पिक समाधान हैं? – calclavia

+1

@ user2254679 क्या आपने यह धागा भी देखा है? http://stackoverflow.com/questions/5703550/my-eclipse-adb-server-didnt-ack-failed-to-start-daemon?rq=1 – Paul

40

मैं जीनमोशन का उपयोग कर रहा हूं, लेकिन अकेले पॉल के समाधान ने त्रुटि (मैक के लिए) को ठीक नहीं किया।

अद्यतन एंड्रॉयड एसडीके एसडीके प्रबंधक के माध्यम से नवीनतम संस्करण (24.4.1)

प्रकार android कमांड लाइन

में एसडीके प्रबंधक में खोजने के लिए:

मैं करना पड़ा नवीनतम एसडीके उपकरण और स्थापित करें।

एक बार एसडीके पथ स्थापित करने के बाद नीचे जैसा नया एसडीके स्थान अपडेट करना चाहिए।

enter image description here

फिर नए एसडीके का उपयोग करने के

export ANDROID_HOME=/usr/local/Cellar/android-sdk/24.4.1_1

export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

की पुष्टि यह echo $PATH

के साथ अपने पथ देखने से जोड़ दिया गया है $ ANDROID_HOME अद्यतन फिर genymotion में क्या क्या @Paul कहते हैं ऊपर और बिंदु genymotion एडीबी ही एसडीके

enter image description here

+0

यह उबंटू 16.04 के लिए काम करता है। किसी कारण से मैंने सोचा कि '$ ANDROID_HOME/tools' निर्देशिका क्लासपाथ पर आवश्यक नहीं होगी। आपको एडीबी से कनेक्ट करने के लिए जोड़ना होगा। – Orar

1

प्रणाली का उपयोग करने के: विंडोज 10

मेरे मुद्दा: स्थापना Genymotion को इंगित करने के कस्टम एसडीके का कोई प्रभाव नहीं पड़ा। मुझे अभी भी प्राप्त हुआ है:

Couldn't start project on Android: could not install smartsocket listener: cannot bind to 127.0.0.1:5037: Only one usage of each socket address (protocol/network address/port) is normally permitted. (10048) could not read ok from ADB Server * failed to start daemon * error: cannot connect to daemon

मुझे पता चला कि पूरे सिस्टम में एडीबी संस्करणों का उपयोग किया जा रहा था।

where /r C:\ adb.exe 

यह उत्पादित परिणाम::

C:\Program Files\Expo XDE\resources\app\node_modules\xdl\binaries\windows\adb\adb.exe 
C:\Program Files\Genymobile\Genymotion\tools\adb.exe 
C:\Users\kyle\AppData\Local\Android\Sdk\platform-tools\adb.exe 
C:\Users\kyle\AppData\Local\Android\Sdk\platform-tools\adb backup\adb.exe 

प्रत्येक निर्देशिका और चल रहा है के लिए नेविगेट: यहाँ आदेश मैं उन्हें खोजने के लिए प्रयोग किया जाता है

adb.exe version 

अनुमति मुझे देखने के लिए कि एक्सपो था एडीबी संस्करण चल रहा है:

Android Debug Bridge version 1.0.36 
Revision fd9e4d07b0f5-android 
Genymotion कस्टम का उपयोग कर

जबकि SDK संस्करण था (ग: \ Users \ केली \ AppData \ Local \ एंड्रॉयड \ Sdk \ मंच उपकरण \ adb.exe):

Android Debug Bridge version 1.0.39 
Revision 3db08f2c6889-android 

एक परीक्षण के रूप मैं एडीबी फ़ाइलों लिया (adb.exe, AdbWinApi.dll, AdbWinUsbApi.dll) से

c:\Users\kyle\AppData\Local\Android\Sdk\platform-tools\adb.exe 

और उन्हें एक बैकअप फ़ोल्डर में रखा गया। इसके बाद मैंने

c:\Program Files\Expo XDE\resources\app\node_modules\xdl\binaries\windows\adb\adb.exe 

पर स्थित विज्ञापन फ़ाइलों को स्थानांतरित कर दिया।

adb kill-server 

जो कारण मेरी Genymotion डिवाइस होने पहले से चल रहा करने के लिए स्वचालित रूप से एडीबी सर्वर पुन: प्रारंभ करने के कारण होता है: मैं के साथ adb को मार डाला। मैंने एक्सपो एक्सडीई के अंदर "पुनरारंभ करें" बटन दबाया और यह तुरंत काम करना शुरू कर दिया। यहाँ लॉग जहां मैं कम से 01:13:04 पुनः आरंभ बटन हिट है:

12:45:53 AM 
could not install *smartsocket* listener: cannot bind to 127.0.0.1:5037: Only one usage of each socket address (protocol/network address/port) is normally permitted. (10048) 
could not read ok from ADB Server 
* failed to start daemon * 
error: cannot connect to daemon 
1:13:04 AM 
Restarting project and clearing packager cache (Hold shift while clicking restart to avoid clearing cache). 
1:13:11 AM 
Starting React Native packager... 
1:13:17 AM 
Scanning 543 folders for symlinks in C:\Users\kyle\git\betalog\node_modules (49ms) 
1:13:17 AM 
1:13:19 AM 
Couldn't adb reverse: closed 
1:13:20 AM 
Project opened! You can now use the "Share" or "Device" buttons to view your project. 
1:13:26 AM 
Couldn't adb reverse: closed 
1:13:26 AM 
Downloading latest version of Expo 
1:13:28 AM 
Installing Expo on device 
1:13:33 AM 
Opening on Android device 
1:13:56 AM 
Building JavaScript bundle: finished in 59643ms. 
1:14:01 AM 
Dependency graph loaded. 
1:14:03 AM 
Your JavaScript transform cache is empty, rebuilding (this may take a minute). 

निष्कर्ष: Genymotion और एक्सपो ताकि एक्सपो ठीक से नकली साथ संवाद कर सकते एडीबी का एक ही संस्करण का उपयोग करने की आवश्यकता हो सकती डिवाइस। अपने एंड्रॉइड एसडीके स्थान के साथ-साथ एक्सपो एक्सडीई सुनिश्चित करने के लिए जेनिमेशन पॉइंटिंग करना वही संस्करण डिवाइस के बीच सही संचार की अनुमति देगा। मैंने एक्सपो एक्सडीई संस्करण को एसडीके स्थान पर ले जाया, लेकिन आप दूसरी तरफ जा सकते हैं (एसडीके एडीबी फाइलें लें और उन्हें एक्सपो एक्सडीई संसाधन स्थान में रखें)।

पीएस मैं इस मुद्दे से संबंधित स्टैक ओवरफ्लो पदों के माध्यम से सभी रहा हूं। बस आप लोगों को पता है कि मेरा टास्क मैनेजर adb.exe चलने के तीन उदाहरण दिखाता है। यदि आप उनमें से किसी को मार देते हैं तो वे वापस आते हैं।

आशा इस मदद करता है/चियर्स

0

जबकि मैं एक्सपो यूआई से भागने की कोशिश की मैं एक ही बात थी। वही चीज़ें, जैसा उत्तर में वर्णित है, लेकिन ऐप नहीं चल रहा था। जब एक बार कमांड लाइन (प्रोजेक्ट फ़ोल्डर में) से exp android चलाने का प्रयास किया गया, तो एप्लिकेशन सफलतापूर्वक भाग गया और अगली बार एक्सपो यूआई से चलाया गया सफलतापूर्वक चला गया।

2

मुझे एक समान समस्या थी।

सबसे पहले, मैंने ऐप को अनइंस्टॉल किया। फिर, मैंने एंड्रॉइड स्टूडियो से प्रदान किए गए एंड्रॉइड एसडीके को जेनीमोशन की ओर इशारा किया, इसके बाद, मैंने टर्मिनल में "adb kill-server" चलाया। अंत में, मैंने फिर से "प्रतिक्रिया-देशी रन-एंड्रॉइड" चलाया और एक सफलता हासिल की।

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