<पी> मान लीजिए कि आप एक संस्करण नियंत्रण प्रणाली का उपयोग कर रहे हैं और आपका प्रोजेक्ट उन सेवाओं का उपयोग करता है जिनके लिए एपीआई कुंजियों की आवश्यकता होती है। जब वे आपकी स्थानीय मशीन पर हों तो सब कुछ अच्छा होता है, लेकिन आप इन एपीआई कुंजियों को दुनिया के साथ साझा नहीं करना चाहते। <पी> तो आप अभी भी अपने एप्लिकेशन के भीतर अपनी एपीआई कुंजियों को कैसे सुरक्षित रख सकते हैं, लेकिन जब आप अपना कोड अपने रिपॉजिटरी में अपलोड करते हैं तो उन्हें छिपा भी सकते हैं? <पी> आप संभवतः अपने एप्लिकेशन के अंदर अपनी एपीआई कुंजियों का सामान्य तरीके से उपयोग करने में सक्षम होना चाहते हैं, लेकिन उन्हें उजागर नहीं करना चाहते हैं। रहस्य क्या हैं?
<पी> यहींरहस्यहै अंदर आओ। उन लोगों के समान जिन्हें आप केवल अपने तक ही सीमित रखते हैं, लेकिन एक डेवलपर तरीके से। <पी> रहस्य महत्वपूर्ण जानकारी का प्रतिनिधित्व कर सकते हैं जो आपके एप्लिकेशन को संचालित करने के लिए आवश्यक है, लेकिन परियोजना के बाहर काम करने वाले किसी भी व्यक्ति को दिखाई नहीं देनी चाहिए। पी> <पी> ये एपीआई कुंजी या प्राधिकरण टोकन हो सकते हैं, लेकिन संक्षेप में एक रहस्य प्राधिकरण जानकारी का कोई भी टुकड़ा है जिसका उपयोग केवल आपके और अकेले आपके द्वारा किया जाना चाहिए। यह उसी तरह है जैसे आप किसी वेबसाइट पर अपना पासवर्ड किसी और के साथ साझा नहीं करना चाहते। <पी> 🚨 अस्वीकरण:ध्यान रखें कि इस लेख में दिया गया समाधान आपके संस्करण नियंत्रण प्रणाली से आपके रहस्यों को उजागर न करने के लिए काम करता है। लेकिन चूंकि वे आपके एप्लिकेशन का हिस्सा हैं, फिर भी उन्हें आपके एपीके को डीकंपाइल करके खोजा जा सकता है। अपने रहस्यों को कैसे सुरक्षित रखें
<पी> आपके प्रोजेक्ट में, आपके पास एक local.properties होनी चाहिए अपने प्रोजेक्ट की मूल निर्देशिका के अंतर्गत फ़ाइल करें <पी> यह सुनिश्चित करने के लिए कि इसे आपके संस्करण नियंत्रण सिस्टम द्वारा अनदेखा किया गया है, .gitignore फ़ाइल खोलें और देखें कि यह वहां पाई गई है: <पी>
<पी> आपको अपने प्रोजेक्ट में सीक्रेट्स ग्रैडल प्लगइन आयात करना होगा। <पी> ऐसा करने के लिए, अपने प्रोजेक्ट की रूट बिल्ड.ग्रेडल फ़ाइल पर जाएँ और निम्न पंक्ति में पेस्ट करें: buildscript {
dependencies {
id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' version '2.0.1' apply false
}
}
<पी> इसके बाद, अपने ऐप की बिल्ड.ग्रेडल फ़ाइल पर जाएं और निम्न पंक्ति में पेस्ट करें: plugins {
...
id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin'
}
<पी> अपनी एपीआई कुंजी local.properties फ़ाइल के अंदर जोड़ें: <पी>
<पी> आप अपने रहस्य का उपयोग अपने AndroidManifest.xml के अंदर कर सकते हैं अपने एप्लिकेशन टैग के अंदर एक मेटा-डेटा टैग जोड़कर फ़ाइल करें: <application
android:allowBackup="true"
.....
>
<activity>
....
</activity>
<meta-data
android:name="YOUR_API_KEY_NAME" /// Choose any value here
android:value="${API_KEY_NAME}"/> /// Write the name you gave inside your local.properties file
</application>
<पी> अपनी एपीआई कुंजी तक पहुंचने के लिए, आप मेटा डेटा प्राप्त करने के लिए पैकेजमैनेजर का उपयोग कर सकते हैं: val applicationInfo: ApplicationInfo = application.packageManager
.getApplicationInfo(application.packageName, PackageManager.GET_META_DATA)
val apiKey = applicationInfo.metaData["YOUR_API_KEY_NAME"]
<पी> वैकल्पिक रूप से, आप इसे प्राप्त करने के लिए BuildConfig ऑब्जेक्ट का भी उपयोग कर सकते हैं: BuildConfig.YOUR_API_KEY_NAME
<पी> बस इतना ही अब आप यह जानकर निश्चिंत हो सकते हैं कि आपके रहस्य आपके संस्करण नियंत्रण प्रणाली द्वारा उजागर नहीं किए जाएंगे। <पी> अपने रहस्य रखने का आनंद लें। ㊙️ <पी> मैंने इसे अपनी हाल की परियोजनाओं में से एक पर उपयोग किया है, और आप स्रोत कोड (बिना रहस्यों के) यहां देख सकते हैं। <पी> और यदि आप मेरे द्वारा लिखे गए अन्य लेख देखना चाहते हैं, तो आप यहां जा सकते हैं। <पी> मुफ़्त में कोड करना सीखें. फ्रीकोडकैंप के ओपन सोर्स पाठ्यक्रम ने 40,000 से अधिक लोगों को डेवलपर्स के रूप में नौकरी पाने में मदद की है। आरंभ करें