एंड्रॉइड स्टूडियो - डिबग कीस्टोर


107

क्या Android Studio डिबग बनाता है? यदि हां, तो इसे करने के लिए कीस्टॉर कहां है?


1
यह वैसे भी हस्ताक्षर करता है क्योंकि केवल हस्ताक्षरित बिल्ड स्थापित किए जा सकते हैं।
अलेक्जेंडर कुलाख़्तिन

3
मुझे लगता है कि यह एक वैध प्रोग्रामिंग प्रश्न है। यह सीधे एंड्रॉइड ऐप विकसित करते समय उपयोग किए जाने वाले टूलचेन से संबंधित है।
ऑस्टिन महोनी

का डुप्लीकेट stackoverflow.com/questions/16965058/...
प्राची

@ चरखी 3 साल बाद पूछे गए एक प्रश्न का डुप्लिकेट कैसे हो सकता है? हो सकता है कि यह एक दूसरे की नकल हो।
फास्टेके

यह भी देखें stackoverflow.com/questions/12456491/…
caw

जवाबों:


179

यह उसी स्थान पर है: ~/.android/debug.keystore


5
इसके बजाय ~ / .android में नहीं है?
यूजीन मायमरीन

14
keytool -list -v -Stystore ~ ​​/ .android / debug.keystore
jturolla

5
यह keytool कमांड का विंडोज़ संस्करण है: keytool -exportcert -alias androiddebugkey -keystore C: \ Users \ <User> \। Android \ debug.keystore -list -v
सिमोन

12
डिफ़ॉल्ट पासवर्ड "android" है और कुंजी उपनाम "androiddebugkey" है।
naXa

1
और androiddebugkey के लिए डिफ़ॉल्ट पासवर्ड भी "android" है।
kibitzerCZ

64

यदि आप Windows का उपयोग करते हैं, तो शायद स्थान इस प्रकार है:

C: \ उपयोगकर्ता \ YourUser \ .android \ debug.keystore


30

यदि आप चाहें तो आप अपना स्वयं का डीबग कीस्टोर निर्दिष्ट कर सकते हैं। यह समाधान आपको प्रोजेक्ट डायरेक्टरी के बाहर अपनी कुंजी को स्टोर करने की क्षमता के साथ-साथ हस्ताक्षर प्रक्रिया में स्वचालन का आनंद भी देता है। हां, आप टैब में कीस्टोर्स File -> Project Structureऔर पासवर्ड साइन करने के लिए जा सकते हैं , Signingलेकिन यह प्लेनटेक्स्ट एंट्री को आपकी gradle.build फाइल में डाल देगा, जिसका अर्थ है कि आपके रहस्यों का खुलासा हो सकता है (विशेषकर रिपॉजिटरी कमिट्स में)। इस समाधान के साथ आपको डिबग और रिलीज़ बिल्ड के दौरान अपने स्वयं के कीस्टोर और स्वचालन के जादू का उपयोग करने का नियंत्रण मिलता है।

1) एक gradle.properties बनाएँ (यदि आपके पास पहले से कोई नहीं है)।

इस फ़ाइल का स्थान आपके OS पर निर्भर करता है:

   /home/<username>/.gradle/ (Linux)
   /Users/<username>/.gradle/ (Mac)
   C:\Users\<username>\.gradle (Windows)

2) yourprojectname.propertiesफ़ाइल को इंगित करने वाली प्रविष्टि जोड़ें । (विंडोज के लिए उदाहरण)

yourprojectname.properties=c:\\Users\\<username>\\signing\\yourprojectname.properties

3) yourprojectname.propertiesनिम्न जानकारी के साथ चरण 2 में आपके द्वारा निर्दिष्ट स्थान पर फ़ाइल बनाएँ :

keystore=C:\\path\\to\\keystore\\yourapps.keystore
keystore.password=your_secret_password

4) चर का उपयोग करने के gradle.buildलिए yourprojectname.propertiesफ़ाइल को इंगित करने के लिए अपनी फ़ाइल को संशोधित करें ।

if(project.hasProperty("yourprojectname.properties")
        && new File(project.property("yourprojectname.properties")).exists()) {

    Properties props = new Properties()
    props.load(new FileInputStream(file(project.property("yourprojectname.properties"))))

    android {
        signingConfigs {
            release {
                keyAlias 'release'
                keyPassword props['keystore.password']
                storeFile file(props['keystore'])
                storePassword props['keystore.password']
            }
            debug {
                keyAlias 'debug'
                keyPassword props['keystore.password']
                storeFile file(props['keystore'])
                storePassword props['keystore.password']
            }
        }
        compileSdkVersion 19
        buildToolsVersion "20.0.0"
        defaultConfig {
            applicationId "your.project.app"
            minSdkVersion 16
            targetSdkVersion 17
        }
        buildTypes {
            release {
            }
        }
    }

}

dependencies {
    ...
}

5) आनंद लें! अब आपकी सभी चाबियां निर्देशिका की जड़ से बाहर होंगी और फिर भी आपके पास प्रत्येक निर्माण के लिए स्वचालन की खुशियाँ हैं।

यदि आपको "प्रॉपर" वैरिएबल के बारे में अपने gradle.build फ़ाइल में कोई त्रुटि मिलती है, तो यह इसलिए है क्योंकि आप "android {}" ब्लॉक को पहले ifऐसी स्थिति में निष्पादित नहीं कर रहे हैं, जहाँ propsवेरिएबल को असाइन किया गया है, इसलिए बस पूरे android {... } सेक्शन में वह अवस्था जिसमें प्रॉपर वैरिएबल असाइन किया गया है फिर से कोशिश करें।

मैंने यहाँ और यहाँ मिली जानकारी से इन चरणों को एक साथ जोड़ दिया


1
"2) के बारे में एक प्रविष्टि जोड़ें ..."। कहाँ में एक प्रविष्टि जोड़ें?
वाइकिंगग्लान

निर्माण स्वचालन के विचार से प्यार करें
खुर्रम शहजाद 12

धन्यवाद, यह स्रोत नियंत्रण के बाहर उत्पादन पासवर्ड रखने का एक शानदार तरीका है (इसलिए वे सभी देवों के लिए उपलब्ध नहीं हैं)!
नकली

15

Android Studio debug.keystore फ़ाइल पथ पर्यावरण चर ANDROID_SDK_HOME पर निर्भर करता है।

यदि ANDROID_SDK_HOME परिभाषित किया गया है, तो SDK के सबफ़ोल्डर में रखा फ़ाइल .android
जब परिभाषित नहीं किया जाता है, तो केइस्टोर को उपयोगकर्ता के घर पथ पर उसी सबफ़ोल्डर में रखा जाता है:
- % HOMEPATH% \। Android \ on Windows
- $ HOME / .android / Linux पर।


1
क्या आप अपने समाधान प्रदान करने के बारे में थोड़ा और विवरण जोड़कर अपने जवाब को विस्तृत कर सकते हैं?
अबरिसन

क्यों 87 लोगों को लगता है कि यह ~ / .android / debug.keystore में है, उन सभी के पास "ANDROID_SDK_HOME" नाम का एक पर्यावरण चर नहीं है ???
इलोवेइनीस्टा

यह बहुत मददगार था। बहुत बहुत धन्यवाद
राहुल

4

यहां बताया गया है कि मैंने आखिरकार ~ / .android / debug.keystore फ़ाइल कैसे बनाई।

पहले कुछ पृष्ठभूमि। मुझे एक नया ट्रैवल लैपटॉप मिला। Android स्टूडियो स्थापित किया गया। Git hub से मेरे android प्रोजेक्ट को क्लोन किया। प्रोजेक्ट नहीं चलेगा। अंत में पता चला कि debug.keystore नहीं बनाया गया था ... और मैं यह पता नहीं लगा सका कि इसे बनाने के लिए एंड्रॉइड स्टूडियो कैसे प्राप्त करें।

अंत में, मैंने एक नई रिक्त परियोजना बनाई ... और उस ने debug.keystore बनाया!

आशा है कि यह अन्य जो इस समस्या है मदद करता है।


1

मैक पर, आप इसे यहाँ पाएँगे: /User/$username/.android


1

यदि आप Windows का उपयोग करते हैं, तो आप पाएंगे कि यह इस प्रकार है: फ़ाइल -> परियोजना संरचना -> पहलू

अपने Android प्रोजेक्ट को चुना और "Facet 'Android'" विंडो क्लिक TAB "पैकेजिंग" में, आपको वही मिलेगा जो आप चाहते हैं


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.