2014-07-17 13 views
12

मैं एंड्रॉइड स्टूडियो 0.8.2 का उपयोग कर रहा हूं, और एंड्रॉइड 4.1 और एंड्रॉइड वेयर 4.4 के साथ एक प्रोजेक्ट बनाया है। मुझे इसे Google Play सेवाओं के साथ एकीकृत करने की आवश्यकता है।त्रुटि: पैकेज नाम 'com.google.android.gms' के साथ एक से अधिक लाइब्रेरी

मैं पालन करने के लिए गूगल एंड्रॉयड स्टूडियो यहाँ Play सेवाओं सेटअप पृष्ठ कोशिश कर रहा हूँ: https://developer.android.com/google/play-services/setup.html

चरण 2 में, यह इस निर्भरता को जोड़ने के लिए कहते हैं:

compile 'com.google.android.gms:play-services:5.0.77' 

हालांकि, समन्वयन करने पर, मैं यह संदेश प्राप्त:

+०१२३५१६४१०६१:

Error:Execution failed for task ':mobile:processDebugResources'. 
> Error: more than one library with package name 'com.google.android.gms' 
    You can temporarily disable this error with android.enforceUniquePackageName=false 
    However, this is temporary and will be enforced in 1.0 

यहां मोबाइल मॉड्यूल के अंदर मेरा पूरा build.gradle फ़ाइल है

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 20 
    buildToolsVersion "20.0.0" 

    defaultConfig { 
     applicationId "com.OptimizedPrime.locationweartabs" 
     minSdkVersion 16 
     targetSdkVersion 20 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      runProguard false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    wearApp project(':wear') 
    compile 'com.google.android.gms:play-services-wearable:+' 
    compile 'com.google.android.gms:play-services:5.0.77' 
    // You must install or update the Support Repository through the SDK manager to use this dependency. 
    compile 'com.android.support:support-v13:19.+' 
} 

ऐसा प्रतीत होता है कि अनुशंसित निर्भरता पहनने योग्य संकलन कथन के साथ विरोधाभासी है। मैं पहनने योग्य समर्थन को बनाए रखना चाहता हूं, और साथ ही साथ Google Play सेवाओं की आवश्यकता है। मैं यह कैसे तय करुं?

+0

क्या यह संभव है कि पुस्तकालयों में से एक दूसरे पर निर्भर करता है? शायद एक पारस्परिक निर्भरता है, इसलिए आपको इसे जोड़ने की आवश्यकता नहीं है। –

+0

इस उत्तर में काफी मदद मिली: http://stackoverflow.com/a/37772331/2371425। आपको यह सुनिश्चित करना होगा कि एकाधिक 'com.google.android.gms' आयात नहीं किए जा रहे हैं। – Sakiboy

उत्तर

22

यदि आपके पास:

compile 'com.google.android.gms:play-services-wearable:5.0.77' 

तो आप की जरूरत नहीं है:

compile 'com.google.android.gms:play-services:5.0.77' 

गैर पहनने योग्य एक को हटा दें।

+0

यह काम किया। त्रुटि चली गई और मैं अभी भी स्थान एपीआई का उपयोग कर सकता हूं। धन्यवाद! – Gerard

+0

मेरे मामले में, आयात com.google.android.gms.plus.PlusClient' को 'compile' com.google.android.gms की आवश्यकता है: play-services: 5.2.08''। तो मैं पहनने योग्य एक हटा देता हूँ। – Dalinaum

+0

क्या होगा यदि मुझे दोनों की आवश्यकता है ... –

6

हो सकता है संभवतः अपने विभिन्न संस्करणों के साथ निर्भरता के विभिन्न प्रकार है प्रयोग कर रहे हैं:

com.google.android.gms:play-services-neededDependency:version

उदाहरण के लिए: आप नीचे दिए गए उल्लेख के रूप में दोनों निर्भरता उपयोग कर रहे हैं:

compile 'com.google.android.gms:play-services-gcm:7.8.0' 
compile 'com.google.android.gms:play-services-ads:8.3.0' 

कोशिश एक ही संस्करण का उपयोग करने के

compile 'com.google.android.gms:play-services-gcm:7.8.0' 
compile 'com.google.android.gms:play-services-ads:7.8.0' 

धन्यवाद, के लिए उपयोगी आशा: की तरह अलग अलग निर्भरता के लिए आप।

+1

इससे वास्तव में मदद मिली। 'Com.google.android.gms: play-services' और' के साथ समस्या थी – Scarysize

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