2013-07-31 5 views
19

मैं v3 पर प्लगइन अपग्रेड करने का प्रयास कर रहा हूं, और मैंने प्लगइन लोडिंग समस्याओं को पिछले करने में कामयाब रहा है, और मैंने प्रबंधित किया है क्लाइंट पर्यावरण के लिए प्लगइन का पर्दाफाश करें (निष्पादन के तरीके में परिवर्तन करना आदि)।फोनगैप 3 प्लगइन: exec() अज्ञात प्लगइन पर कॉल करें "..."

लेकिन जब मैं

adb logcat | grep -v nativeGetEnabledTags | grep -i web

साथ adb logcat घड़ी मैं इस त्रुटि मिलती है:

D/PluginManager(11189): exec() call to unknown plugin: WebSocket

मैं बाहर काम नहीं कर सकता क्या गलत हो गया है, और मैं नहीं कर रहा हूँ सुनिश्चित करें कि एंड्रॉइड बिल्ड प्लगइन क्यों नहीं देख सकता है।

मैंने सभी कोड को एक जिथब रेपो में धक्का दिया है, इसलिए यदि कोई दोहराने और मदद करने में सक्षम है तो मुझे बहुत स्वागत है! है रेपो

यहाँ:: - रेमी

https://github.com/remy/phonegap_test

मैं भी रूपांतरण के अपने अनुभव को लिखने की कोशिश कर रहा हूँ और gotchas प्रवेश करने के रूप में मैं उन्हें मारा (वहाँ रीडमी में कुछ है, हालांकि यह अधूरा है)

उत्तर

26

फ़ाइल

<feature name="App"> 
     <param name="android-package" value="org.apache.cordova.App" /> 
</feature> 

में इन पंक्तियों को खोजने के "रेस/xml/config.xml"

में अपने प्लगइन को परिभाषित करने और संलग्न इन सही होने के बाद:

<feature name="MyPluginName"> 
     <param name="android-package" value="com.phonegap.plugins.plugin.class" /> 
</feature> 

डमी की जगह वास्तविक नामों के साथ नाम (MyPluginName, plugins.plugin.class, आदि)। यह मेरे लिए काम करता है जब मैं इस त्रुटि हो रही थी:

exec() call to unknown plugin : MyPluginName

+2

मेरा नाम 'नाम' 'फीचर' में विशेषता 'param' में' value' विशेषता के समान है। इसलिए, '<सुविधा नाम =" com.phonegap.plugins.plugin.class ">' – AimanB

+0

धन्यवाद, मेरी समस्या को एक आकर्षण की तरह तय किया गया है! –

+0

Thaks, मेरे लिए काम किया! लेकिन हर बार जब मैं 'कॉर्डोवा तैयार एंड्रॉइड' चलाता हूं तो यह res/xml/config.xml से MyPlugin के लिए प्रविष्टि को हटा देता है, और मुझे प्रोजेक्ट चलाने से पहले इसे मैन्युअल रूप से अपडेट करने की आवश्यकता होती है। क्या आप इसे हल करने के बारे में जानेंगे? – alberjoe

0

क्या आप एक सफल डिवाइस से पहले ईवेंट प्राप्त कर रहे हैं? मुझे उस त्रुटि को अतीत में मिला है जब मेरा ऐप चुपचाप मेरे कोड में अन्य कारणों से विफल रहा था जिससे मेरा डिवाइस पहले से कभी भी आग नहीं पहुंची थी। मेरे मामले में चुप त्रुटि मेरी app.initialize() कोड ब्लॉक में कुछ जावास्क्रिप्ट वाक्यविन्यास त्रुटियों के कारण थी।

2

मुझे अचानक अपने फोन अंतराल निर्माण (2.6) के साथ एक ही समस्या मिल रही है। वही सटीक कोड पहले काम करता था, इसलिए यह एक बिल्ड मुद्दा होना चाहिए।

क्या आपने अपना एपीके खोलने की कोशिश की और देखें कि config.xml शामिल है (वहां प्लगइन्स परिभाषित हैं)।

+1

धन्यवाद। हालांकि मेरी समस्या इस त्रुटि से संबंधित नहीं है। इस उत्तर ने मुझे मदद की। – Srinivas

0

पर एंड्रॉयड स्टूडियो 1.0.1 + Cordova 4.2.0 (मैक ओएस 10.9.5 पर चल रहा है), मैं एक ऐसी ही समस्या का समाधान होने ("कार्यकारी() कॉल अज्ञात प्लगइन ") के रूप में पालन करें:

यह हुआ है कि टैग की सामग्री:

<feature name="MyPluginName"> 
<param name="android-package" value="com.phonegap.plugins.plugin.class" /> 
</feature> 

तहत YourCordovaProjectName/config.xmlYourCordovaProjectName/प्लेटफार्मों के तहत दोहराया नहीं गया था/एंड्रॉयड/res/एक्सएमएल /config.xml

मुझे फ़ाइल कॉन्फ़िगरेशन को बदलना पड़ा।एक्सएमएल तहत YourCordovaProjectName/प्लेटफार्मों/एंड्रॉयड/res/xml/ और टैग को जोड़ने के लिए:

<feature name="MyPluginName"> 
    <param name="android-package" value="com.phonegap.plugins.plugin.class" /> 
    </feature> 

तो यह काम किया।

मैं भी जोड़ना होगा कि मैं आईओएस के साथ एक ही समस्या का सामना किया है, मैं मैन्युअल रूप से दर्ज किया था: फ़ोल्डर के अंतर्गत फ़ाइल config.xml में

<feature name="MyPluginName"> 
<param name="ios-package" value="com.phonegap.plugins.plugin.class" /> 
</feature> 

YourCordovaProjectName/प्लेटफार्मों/iOS/YourCordovaProjectName

उम्मीद है कि है कि भविष्य और YourCordovaProjectName/config.xml की सामग्री में ठीक किया जाएगा सही ढंग से config.xml फ़ाइलों को (यह एंड्रॉयड कुछ मो के लिए सही ढंग से काम किया करने के लिए इस्तेमाल प्रत्येक विशिष्ट प्लेटफार्मों के तहत कर रहे में परिलक्षित होगा nths पहले)।

1

ProjectFolder तहत एंड्रॉयड में प्लगइन परिभाषा जोड़ने के लिए/प्लेटफार्मों/एंड्रॉयड/res/xml/config.xml, अद्यतन ProjectFolder/plugins/android.json

"कॉर्डोबा निर्माण" कमांड इस android.json फ़ाइल पढ़ा जाएगा और प्रोजेक्टफोल्डर/प्लेटफॉर्म/एंड्रॉइड/res/xml/config.xml को स्वचालित रूप से यहां बताए गए सभी प्लगइन के साथ अपडेट करें।

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