2017-03-07 12 views
9

में डिबग बिल्ड संस्करण में स्विच करने में असमर्थ मैंने बिल्ड संस्करण को रिलीज़ करने और कॉन्फ़िगर कॉन्फ़िगर करने के लिए स्विच किया है। अब जब मैं ड्रॉप डाउन मेनू से डीबग बिल्ड संस्करण को जांचने का प्रयास करता हूं तो यह तुरंत रिलीज बिल्ड संस्करण पर स्विच करता है। इसलिए मैं अपने ऐप को डीबग मोड में और चलाने में सक्षम नहीं हूं।एंड्रॉइड स्टूडियो

apply plugin: 'com.android.application' 
apply plugin: 'kotlin-android' 
apply plugin: 'kotlin-android-extensions' 
apply plugin: 'kotlin-kapt' 
apply plugin: 'realm-android' 

android { 
    signingConfigs { 
     config { 
      ... 
     } 
    } 
    compileSdkVersion rootProject.compileSdkVersion 
    buildToolsVersion rootProject.buildToolsVersion 
    defaultConfig { 
     applicationId "com.kost.foo" 
     minSdkVersion rootProject.minSdkVersion 
     targetSdkVersion rootProject.targetSdkVersion 
     versionCode 2 
     versionName "1.1" 
     testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
ndk { 
      abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64' 
     } 
    externalNativeBuild { 
     cmake { 
      ... 
     } 
    } 
} 
buildTypes { 
    release { 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     debuggable true 
     signingConfig signingConfigs.config 
    } 
} 
sourceSets { 
    main.java.srcDirs += 'src/main/kotlin' 
    main { 
     jniLibs.srcDirs = ['src/main/jni'] 
    } 
} 
externalNativeBuild { 
    cmake { 
     path 'src/main/jni/CMakeLists.txt' 
    } 
} 

} 

kapt { 
    generateStubs = true 
} 

repositories { 
    maven { url 'https://github.com/linchaolong/stetho-realm/raw/master/maven-repo' } 
    mavenCentral() 

} 

मैं build.gradle में सभी परिवर्तनों को वापस करने के लिए के रूप में यह कॉन्फ़िगर करने से पहले था की कोशिश की है, लेकिन कोई भाग्य के साथ।

कोई भी विचार इस मुद्दे को कैसे ठीक करें?

+0

क्या आपने धीरे-धीरे फ़ाइलों को धीरे-धीरे फ़ाइलों को सिंक करने का प्रयास किया था? – ridoy

+0

@ridoy हाँ, कोशिश की। – AlexKost

+0

में मदद नहीं मिली है मुझे भी एक ही समस्या का सामना करना पड़ रहा है – Manisha

उत्तर

0

अपने build.gradle फ़ाइल से संबंधित नहीं,

शेयरिंग उम्मीद कर इसे किसी और मदद कर सकता है -

मैं वही समस्या यह था हो रही थी क्योंकि build.gradle में लाइन में से एक -

android { 
    ... 
    publishNonDefault true // remove this line and it should work! 
} 

Here आप publishNonDefualt बारे में अधिक विस्तार प्राप्त कर सकते हैं -


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


+2

जब मैं इस मुद्दे को खत्म कर रहा था तो मेरे पास उस build.gradle में वह रेखा नहीं थी। – AlexKost

+0

मेरे पास मेरे build.gradle में वह रेखा नहीं है। प्रासंगिकता क्या है? –

6

शायद आपको इसका समाधान मिल गया है, बस मामले में, मैं यहां अपना समाधान प्रदान करता हूं।

यह है क्योंकि आप का उपयोग कर अपने निर्भर परियोजना संकलन है कि हो सकता है:

compile project('module_a') 

सेटिंग से ऊपर अपने मॉड्यूल के रिलीज़ संस्करण संकलित करने के लिए अपनी परियोजना के लिए बाध्य करेगा। बस इसे नीचे बदलें:

releaseCompile project(path: ':module_a', configuration: 'release') 
debugCompile project(path: ':module_a', configuration: 'debug') 

आशा है कि इससे मदद मिलती है!

+0

यह केवल पुराने ग्रेडल संस्करणों के लिए है: [link] (https://stackoverflow.com/questions/33718663/gradle-error-configuration-declares- निर्भरता- which-is-not-declared), @rockefelox द्वारा पोस्ट का संदर्भ लें नए संस्करणों के लिए –

+0

सच है। एंड्रॉइड स्टूडियो 3.0 के बाद से, सभी xxxCompile बंद xxxImplementation में बदल जाते हैं। – Russell

3

एक ही समस्या थी, एक नया अस्थायी बिल्ड प्रकार, बिल्ड> बिल्ड बिल्ड प्रकार संपादित करें, बिल्ड प्रकार का चयन करें और एक नया जोड़ें। सिंक करें, फिर आप नया निर्माण प्रकार चुन सकते हैं, और फिर मूल डीबग बिल्ड प्रकार पर वापस लौट सकते हैं।

+0

यह मेरे लिए काम नहीं किया – Juancho

1

मुझे बस एक ही समस्या थी। एंड्रॉयड स्टूडियो को बंद करने उत्पन्न फ़ाइलों और फ़ोल्डरों को हटाने के द्वारा इसे हल: .gradle, .idea, app/.externalNativeBuild, app/build, build, app/app.iml, ProjectName.iml, local.properties और फिर Android स्टूडियो को दोबारा लॉन्च करने और इसे प्रारंभ से इन सभी फ़ाइलों को पुन: उत्पन्न की इजाजत दी।

1

मेरे लिए मैं अपने 'devDebug' संस्करण पर स्विच करने में असमर्थ था लेकिन मैं 'devRelease' और फिर 'devDebug' जैसे किसी अन्य संस्करण पर स्विच कर सकता था। तो पहले किसी अन्य संस्करण पर स्विच करने का प्रयास करें।

3

बस ".idea" फ़ोल्डर को काटने की आवश्यकता है और इसे बाहर निकालें परियोजना रूट फ़ोल्डर (यदि आपको आवश्यकता हो तो बैक अप के लिए)। इन फ़ाइलों को स्वतः पुन: उत्पन्न किया जाएगा। प्रोजेक्ट खोलने पर यह आपके प्रोजेक्ट में मॉड्यूल (ऐप) जोड़ देगा। आप इसे अनदेखा कर सकते हैं।

यह डिफ़ॉल्ट निर्माण संस्करण को "डीबग" सेट करने के लिए सेट करता है। आप बिल्ड वैरिएंट विकल्प प्राप्त करने के लिए बाएं कोने पर बिल्ड वैरिएंट टैब देख सकते हैं या बाएं तल पर "मॉनिटर" प्रतीक पर होवर कर सकते हैं।

0

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

0

अपनी मॉड्यूल सेटिंग खोलें। (एफ 4 पर क्लिक करें)

प्लस प्रकारों पर जाएं और प्लस (+) चिह्न पर क्लिक करके एक नया निर्माण बनाएं।

इसे "डेमो" जैसे कुछ भी नाम दें।

डीबग बिल्ड के सभी डेटा डुप्लिकेट करें।

अब जब आप बिल्ड वेरिएंट खोलते हैं तो आप डीबग के साथ-साथ डेमो पर भी स्विच कर पाएंगे।

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