एंड्रॉइड के लिए अमेज़ॅन गेटिंग स्टार्टेड गाइड के साथ लॉगिन करें
अमेज़ॅन के साथ लॉगिन करें: एंड्रॉइड के लिए प्रारंभ करने की मार्गदर्शिका
कॉपीराइट © 2016 Amazon.com, Inc., या इसके सहयोगी। सर्वाधिकार सुरक्षित। Amazon और Amazon लोगो Amazon.com, Inc. या इसके सहयोगियों के ट्रेडमार्क हैं। अमेज़ॅन के स्वामित्व वाले अन्य सभी ट्रेडमार्क उनके संबंधित स्वामियों की संपत्ति हैं।
Android के लिए प्रारंभ करना
इस गाइड में हम आपको दिखाएंगे कि अपने एंड्रॉइड ऐप में अमेज़ॅन के साथ लॉगिन कैसे जोड़ें। इस गाइड को पूरा करने के बाद आपके ऐप में उपयोगकर्ताओं को अपने अमेज़ॅन क्रेडेंशियल्स के साथ लॉग इन करने की अनुमति देने के लिए आपके ऐप में एक कार्यशील लॉगिन विद अमेज़ॅन बटन होना चाहिए।
एंड्रॉइड डेवलपर टूल इंस्टॉल करना
एंड्रॉइड के लिए अमेज़ॅन एसडीके के साथ लॉगिन आपको अपने एंड्रॉइड एप्लिकेशन में अमेज़ॅन के साथ लॉगिन जोड़ने में मदद करेगा। हम अनुशंसा करते हैं कि आप एंड्रॉइड के लिए डेवलपर.amazon.com से एंड्रॉइड स्टूडियो के साथ अमेज़ॅन एसडीके के साथ लॉगिन का उपयोग करें। हालाँकि आप एडीटी प्लगइन के साथ एक्लिप्स का भी उपयोग कर सकते हैं। एंड्रॉइड स्टूडियो कैसे इंस्टॉल करें और एंड्रॉइड एसडीके सेटअप कैसे करें, इसके चरणों के लिए देखें Android SDK प्राप्त करें Developer.android.com पर।
जब एंड्रॉइड एसडीके इंस्टॉल हो जाए, तो ढूंढें एसडीके प्रबंधक आपके एंड्रॉइड इंस्टॉलेशन में एप्लिकेशन। अमेज़ॅन के साथ लॉगिन विकसित करने के लिए, आपको एंड्रॉइड 2.2 या उच्चतर (एपीआई संस्करण 8) के लिए एसडीके प्लेटफ़ॉर्म स्थापित करने के लिए एसडीके प्रबंधक का उपयोग करना होगा। देखना एसडीके पैकेज जोड़ना SDK का उपयोग करने के बारे में अधिक जानकारी के लिए Developer.android.com पर जाएं
एसडीके इंस्टॉल करने के बाद, अपने ऐप्स चलाने के लिए एक एंड्रॉइड वर्चुअल डिवाइस (एवीडी) सेट करें। देखना प्रबंध वर्चुअल डिवाइस वर्चुअल डिवाइस सेट करने के निर्देशों के लिए Developer.android.com पर जाएं।
जब आपका विकास परिवेश स्थापित हो जाए, तो आप ऐसा कर सकते हैं एंड्रॉइड के लिए अमेज़ॅन एसडीके के साथ लॉगिन इंस्टॉल करें or एस चलाएँampले ऐप, निम्नलिखित अनुसार।
एंड्रॉइड के लिए अमेज़ॅन एसडीके के साथ लॉगिन इंस्टॉल करें
एंड्रॉइड के लिए अमेज़ॅन एसडीके के साथ लॉगिन दो पैकेजों में आता है। पहले में एंड्रॉइड लाइब्रेरी और सहायक दस्तावेज़ शामिल हैं। दूसरे में इस प्रकार शामिल हैampवह एप्लिकेशन जो उपयोगकर्ता को लॉग इन करने और अपना प्रो प्रदर्शित करने की अनुमति देता हैfile डेटा।
यदि आपने पहले से ही एंड्रॉइड एसडीके या एंड्रॉइड डेवलपमेंट टूल्स इंस्टॉल नहीं किया है, तो देखें स्थापित कर रहा है एंड्रॉइड डेवलपर टूल्स उपरोक्त अनुभाग देखें।
- डाउनलोड करना ज़िप और निकालें fileआपकी हार्ड ड्राइव पर एक निर्देशिका के लिए।
आपको ए देखना चाहिए डॉक्टर और एक उदारीकरण उपनिर्देशिका. - खुला doc/index.html को view अमेज़ॅन एंड्रॉइड एपीआई के साथ लॉगिन करें
- देखना अमेज़ॅन लाइब्रेरी के साथ लॉगिन स्थापित करें, एंड्रॉइड में लाइब्रेरी और दस्तावेज़ीकरण कैसे जोड़ें, इस पर निर्देशों के लिए
जब एंड्रॉइड के लिए अमेज़ॅन एसडीके के साथ लॉगिन इंस्टॉल हो जाए, तो आप ऐसा कर सकते हैं अमेज़न के साथ एक नया लॉगिन बनाएं परियोजना, बाद अमेज़न के साथ लॉगिन के साथ पंजीकरण .
एस चलाएँampले ऐप
चलाने के लिएampले एप्लिकेशन, एस आयात करेंampएंड्रॉइडस्टूडियो वर्कस्पेस में ले जाएं (यदि आप एक्लिप्स का उपयोग कर रहे हैं, तो आपको वर्कस्पेस में एक कस्टम डिबग कीस्टोर भी जोड़ना होगा। देखें कस्टम डिबग जोड़ें ग्रहण में कीस्टोर नीचे अनुभाग)। एपीआई कुंजी जो एसampएप्लिकेशन उपयोग के लिए कार्यस्थान को उस कीस्टोर का उपयोग करने की आवश्यकता होती है जो एस के साथ आता हैampले. यदि कस्टम कीस्टोर स्थापित नहीं है, तो उपयोगकर्ता एस का उपयोग करके लॉग इन नहीं कर पाएंगेampले. यदि आप AndroidStudio का उपयोग कर रहे हैं तो कीस्टोर स्वचालित रूप से उठाया जाएगा।
- डाउनलोड करना SampLeLoginWithAmazonAppForAndroid-src.zip और निकालें fileआपकी हार्ड पर एक निर्देशिका के लिए
- एंड्रॉइड स्टूडियो प्रारंभ करें और चुनें एक मौजूदा एंड्रॉइड स्टूडियो प्रोजेक्ट खोलें
- के लिए ब्राउज़ करें SampLeLoginWithAmazonApp डाउनलोड की गई ज़िप को निकालने के बाद प्राप्त निर्देशिका file चरण में
- से निर्माण मेनू पर क्लिक करें प्रोजेक्ट बनाएं, और प्रोजेक्ट के पूरा होने की प्रतीक्षा करें
- से दौड़ना मेनू पर क्लिक करें दौड़ना और फिर क्लिक करें SampLeLoginWithAmazonApp.
- एमुलेटर या कनेक्टेड एंड्रॉइड डिवाइस का चयन करें और क्लिक करें दौड़ना.
एक्लिप्स में कस्टम डिबग कुंजी स्टोर जोड़ें
यदि आप एक्लिप्स का उपयोग कर रहे हैं, तो कस्टम डिबग कीस्टोर जोड़ने के लिए नीचे दिए गए निर्देशों का पालन करें:
- में प्राथमिकताएं संवाद, का चयन करें एंड्रॉयड और निर्माण.
- के पास रिवाज़ डीबग कीस्टोर, क्लिक करें ब्राउज़.
- एस पर नेविगेट करेंampले ऐप निर्देशिका और चयन करें 3पी.कीस्टोर, और फिर क्लिक करें OK.
अमेज़न के साथ लॉगिन के साथ पंजीकरण
इससे पहले कि आप Amazon पर Login का उपयोग कर सकें webसाइट या मोबाइल ऐप में, आपको लॉगिन विद अमेज़ॅन के साथ एक एप्लिकेशन पंजीकृत करना होगा। आपका लॉगिन विद अमेज़ॅन एप्लिकेशन वह पंजीकरण है जिसमें आपके व्यवसाय के बारे में बुनियादी जानकारी और प्रत्येक के बारे में जानकारी शामिल है webआपके द्वारा बनाई गई साइट या मोबाइल ऐप जो Amazon के साथ लॉगिन का समर्थन करती है। यह व्यावसायिक जानकारी उपयोगकर्ताओं को हर बार तब दिखाई जाती है जब वे आपके पर Amazon के साथ लॉगिन का उपयोग करते हैं webसाइट या मोबाइल ऐप. उपयोगकर्ताओं को आपके एप्लिकेशन का नाम, आपका लोगो और आपकी गोपनीयता नीति का लिंक दिखाई देगा। ये चरण दर्शाते हैं कि अमेज़ॅन एप्लिकेशन के साथ लॉगिन कैसे पंजीकृत करें और उस खाते में एक एंड्रॉइड ऐप कैसे जोड़ें।
निम्नलिखित विषय देखें:
- अमेजन एप्लीकेशन से अपना लॉगिन रजिस्टर करें
- अपना एंड्रॉइड ऐप पंजीकृत करें
- अमेज़ॅन ऐपस्टोर के लिए एक एंड्रॉइड ऐप जोड़ें
- ऐपस्टोर के बिना एक एंड्रॉइड ऐप जोड़ें
- एंड्रॉइड ऐप हस्ताक्षर और एपीआई कुंजी
- एंड्रॉइड ऐप हस्ताक्षर का निर्धारण करना
- एंड्रॉइड एपीआई कुंजी पुनर्प्राप्त करना
अमेजन एप्लीकेशन से अपना लॉगिन रजिस्टर करें
- जाओ https://login.amazon.com.
- यदि आपने पहले अमेजन के साथ लॉगिन के लिए साइन अप किया है, तो क्लिक करें ऐप कंसोलअन्यथा, क्लिक करें साइन अप करें. आपको सेलर सेंट्रल पर पुनः निर्देशित किया जाएगा, जो लॉगिन के लिए एप्लिकेशन पंजीकरण को संभालता है। यदि आप पहली बार सेलर सेंट्रल का उपयोग कर रहे हैं, तो आपको एक सेलर सेंट्रल खाता स्थापित करने के लिए कहा जाएगा।
- क्लिक नया आवेदन पंजीकृत करें. द अपना आवेदन पंजीकृत करें फार्म दिखाई देगा:
a. में अपना आवेदन पंजीकृत करें फॉर्म, ए दर्ज करें नाम और एक विवरण आपके आवेदन के लिए.
द नाम यह नाम सहमति स्क्रीन पर प्रदर्शित होता है जब उपयोगकर्ता आपके एप्लिकेशन के साथ जानकारी साझा करने के लिए सहमत होते हैं। यह नाम Android, iOS और पर लागू होता है webआपके आवेदन के साइट संस्करण।
b. प्रवेश करें गोपनीयता सूचना URL आपके आवेदन के लिए
द गोपनीयता सूचना URL आपकी कंपनी या एप्लिकेशन की गोपनीयता नीति का स्थान है (उदाampले, http://www.example.com/privacy.html). यह लिंक उपयोगकर्ताओं को सहमति स्क्रीन पर प्रदर्शित होता है।
c. यदि आप कोई जोड़ना चाहते हैं लोगो छवि अपने आवेदन के लिए, क्लिक करें ब्राउज़ और उपयुक्त छवि का पता लगाएं.
यह लोगो आपके व्यवसाय का प्रतिनिधित्व करने के लिए साइन-इन और सहमति स्क्रीन पर प्रदर्शित होता है या webसाइट। यदि लोगो 50 पिक्सेल से अधिक लंबा है तो उसकी ऊंचाई 50 पिक्सेल तक सिकुड़ जाएगी; लोगो की चौड़ाई पर कोई सीमा नहीं है - क्लिक बचाना। आपकाampपंजीकरण कुछ इस तरह दिखना चाहिए:
आपकी मूल एप्लिकेशन सेटिंग सहेजे जाने के बाद, आप विशिष्ट के लिए सेटिंग जोड़ सकते हैं webसाइट और मोबाइल ऐप जो इस लॉगिन का उपयोग अमेज़ॅन खाते के साथ करेंगे।
अपना एंड्रॉइड ऐप पंजीकृत करें
एंड्रॉइड ऐप पंजीकृत करने के लिए, आपके पास अमेज़ॅन ऐपस्टोर के माध्यम से एक ऐप पंजीकृत करने का विकल्प है (अमेज़ॅन ऐपस्टोर के लिए एक एंड्रॉइड ऐप जोड़ें, पी। 8) या सीधे अमेज़ॅन के साथ लॉगिन करें (एक Android जोड़ें ऐपस्टोर के बिना ऐप, पी। 9). जब आपका ऐप पंजीकृत हो जाता है, तो आपके पास एक एपीआई कुंजी तक पहुंच होगी जो आपके ऐप को अमेज़ॅन प्राधिकरण सेवा के साथ लॉगिन तक पहुंच प्रदान करेगी।
टिप्पणी: यदि आप अपने एंड्रॉइड ऐप के भीतर अमेज़ॅन डिवाइस मैसेजिंग का उपयोग करने की योजना बना रहे हैं, तो कृपया संपर्क करें lwa- support@amazon.com साथ:
- अमेज़ॅन खाते का ईमेल पता जिसका उपयोग आपने अमेज़ॅन के साथ लॉगिन के लिए साइन अप करने के लिए किया था।
- अमेज़ॅन खाते का ईमेल पता जिसका उपयोग आपने अमेज़ॅन ऐपस्टोर के लिए साइन अप करने के लिए किया था (यदि भिन्न हो)।
- आपके विक्रेता सेंट्रल खाते पर नाम. (विक्रेता सेंट्रल पर, क्लिक करें सेटिंग्स > खाता जानकारी > विक्रेता जानकारी, और का उपयोग करें प्रदर्शित होने वाला नाम).
- आपके अमेज़ॅन ऐपस्टोर डेवलपर खाते पर नाम। (मोबाइल ऐप वितरण साइट पर, क्लिक करें सेटिंग्स > कंपनी प्रोfile और का उपयोग करें डेवलपर का नाम या कंपनी का नाम).
अमेज़ॅन ऐपस्टोर के लिए एक एंड्रॉइड ऐप जोड़ें
निम्नलिखित चरण आपके अमेज़ॅन खाते से लॉगिन में एक अमेज़ॅन ऐपस्टोर ऐप जोड़ देंगे:
- एप्लिकेशन स्क्रीन से, क्लिक करें एंड्रॉइड सेटिंग्स. यदि आपके पास पहले से ही कोई एंड्रॉइड ऐप पंजीकृत है, तो देखें एपीआई कुंजी जोड़ें बटन एंड्रॉइड सेटिंग्स
द एंड्रॉइड एप्लिकेशन विवरण फार्म दिखाई देगा: - चुनना हाँ प्रश्न के उत्तर में "क्या यह एप्लिकेशन अमेज़ॅन ऐपस्टोर के माध्यम से वितरित किया गया है?"
- उसे दर्ज करें लेबल आपके Android ऐप का. यह आवश्यक नहीं है कि यह आपके ऐप का आधिकारिक नाम हो. यह बस ऐप्स के बीच इस विशेष एंड्रॉइड ऐप की पहचान करता है webअमेज़ॅन एप्लिकेशन के साथ आपके लॉगिन में पंजीकृत साइटें।
- आपका जोड़ें अमेज़ॅन ऐपस्टोर आईडी।
- यदि आपने अपने ऐप पर स्व-हस्ताक्षर किया है, तो स्व-हस्ताक्षरित जानकारी जोड़ें। यह आपको सीधे ऐपस्टोर का उपयोग किए बिना विकास के दौरान एपीआई कुंजी प्राप्त करने की अनुमति देगा:
a. यदि आपका ऐप अमेज़ॅन ऐपस्टोर के माध्यम से हस्ताक्षरित नहीं किया जा रहा है, तो प्रश्न के उत्तर में हां चुनें "क्या यह एप्लिकेशन स्व-हस्ताक्षरित है?"
द एंड्रॉइड एप्लिकेशन विवरण फॉर्म का विस्तार होगा:
b. अपना भरें पैकेज का नाम।
यह आपके एंड्रॉइड प्रोजेक्ट के पैकेज नाम से मेल खाना चाहिए। अपने एंड्रॉइड प्रोजेक्ट का पैकेज नाम निर्धारित करने के लिए, अपनी पसंद के एंड्रॉइड डेवलपर टूल में प्रोजेक्ट खोलें।
खुला AndroidManifest.XML पैकेज एक्सप्लोरर में और का चयन करें घोषणापत्र टैब. पहली प्रविष्टि पैकेज नाम है.
c. एप्लिकेशन दर्ज करें हस्ताक्षर।
यह एक SHA-256 हैश मान है जिसका उपयोग आपके एप्लिकेशन को सत्यापित करने के लिए किया जाता है। हस्ताक्षर कोलन द्वारा अलग किए गए 32 हेक्साडेसिमल जोड़े के रूप में होना चाहिए (उदाहरण के लिए)।ampपर: 01:23:45:67:89:ab:cd:ef:01:23:45:67:89:ab:cd:ef:01:23:45:67:89:ab:cd:ef:01: 3:45:67:89:a b:cd:ef). देखना एंड्रॉइड ऐप हस्ताक्षर और एपीआई कुंजी उन चरणों के लिए जिनका उपयोग आप अपने प्रोजेक्ट से हस्ताक्षर निकालने के लिए कर सकते हैं। - क्लिक बचाना।
यदि आपके ऐप के विभिन्न संस्करणों में अलग-अलग हस्ताक्षर या पैकेज नाम हैं, जैसे कि एक या अधिक परीक्षण संस्करण और एक उत्पादन संस्करण, तो प्रत्येक संस्करण को अपनी एपीआई कुंजी की आवश्यकता होती है। से एंड्रॉइड सेटिंग्स अपने एप्लिकेशन पर, क्लिक करें एपीआई कुंजी जोड़ें आपके ऐप के लिए अतिरिक्त कुंजी बनाने के लिए बटन (प्रति संस्करण एक)।
एंड्रॉइड ऐप हस्ताक्षर और एपीआई कुंजी
ऐप हस्ताक्षर एक SHA-256 हैश मान है जो प्रत्येक एंड्रॉइड ऐप के निर्माण के समय लागू होता है। अमेज़ॅन आपकी एपीआई कुंजी बनाने के लिए ऐप हस्ताक्षर का उपयोग करता है। एपीआई कुंजी अमेज़ॅन सेवाओं को आपके ऐप को पहचानने में सक्षम बनाती है। यदि आप अपने ऐप पर हस्ताक्षर करने के लिए अमेज़ॅन ऐपस्टोर का उपयोग करते हैं, तो एपीआई कुंजी स्वचालित रूप से प्रदान की जाती है। यदि आप अमेज़ॅन ऐपस्टोर का उपयोग नहीं कर रहे हैं, तो आपको अपनी एपीआई कुंजी को मैन्युअल रूप से प्रबंधित करने की आवश्यकता होगी।
ऐप हस्ताक्षर एक कीस्टोर में संग्रहीत होते हैं। आम तौर पर, एंड्रॉइड ऐप्स के लिए एक डिबग कीस्टोर और एक रिलीज़ कीस्टोर होता है। डिबग कीस्टोर एक्लिप्स के लिए एंड्रॉइड डेवलपमेंट टूल्स प्लगइन द्वारा बनाया गया है और डिफ़ॉल्ट रूप से उपयोग किया जाता है। आप एक्लिप्स में डिबग कीस्टोर का स्थान क्लिक करके पा सकते हैं खिड़की, और फिर चयन करें प्राथमिकताएं > एंड्रॉइड > बिल्ड. उस स्क्रीन से आप अपना स्वयं का डिबग कीस्टोर भी जोड़ सकते हैं। एंड्रॉइड स्टूडियो के लिए, से निर्माण मेनू, का चयन करें बिल्ड प्रकार संपादित करें, फिर जाएं हस्ताक्षर टैब, और डिबग कीस्टोर का पता लगाएं इकट्ठा करना File मैदान।
एक रिलीज़ कीस्टोर आमतौर पर तब बनाया जाता है जब आप एक हस्ताक्षरित एपीके बनाने के लिए अपने एंड्रॉइड ऐप को निर्यात करते हैं file.
निर्यात प्रक्रिया के माध्यम से, यदि आप एक नया रिलीज़ कीस्टोर बना रहे हैं तो आप उसका स्थान चुनेंगे। द्वारा
डिफ़ॉल्ट रूप से इसे आपके डिफ़ॉल्ट डिबग KeyStore के समान स्थान पर रखा जाएगा।
यदि आपने विकास के दौरान डिबग हस्ताक्षर का उपयोग करके अपना ऐप पंजीकृत किया है, तो ऐप जारी करने के लिए तैयार होने पर आपको अपने एप्लिकेशन में एक नई एंड्रॉइड सेटिंग जोड़नी होगी। नई ऐप सेटिंग को रिलीज़ कीस्टोर से हस्ताक्षर का उपयोग करना होगा।
देखना अपने आवेदन पत्र पर हस्ताक्षर अधिक जानकारी के लिए Developer.android.com पर जाएं।
एंड्रॉइड ऐप हस्ताक्षर निर्धारित करें
- यदि आपके पास एक हस्ताक्षरित एपीके है file:
a. एपीके को अनज़िप करें file और निकालें सीईआरटी.आरएसए. (यदि आवश्यक हो तो आप एपीके एक्सटेंशन का नाम बदलकर ज़िप कर सकते हैं)।
b. कमांड लाइन से, चलाएँ:कीटूल -प्रिंटसर्ट -file सीईआरटी.आरएसए कीटुलिस में स्थित बिन आपके जावा इंस्टॉलेशन की निर्देशिका।
- यदि आपके पास कीस्टोर है file:
a. कमांड लाइन से, चलाएँ:keytool -list -v -alias -कीस्टोरfileनाम> कीटूल आपके जावा इंस्टॉलेशन की बिन निर्देशिका में स्थित है। उपनाम ऐप पर हस्ताक्षर करने के लिए उपयोग की जाने वाली कुंजी का नाम है।
b. कुंजी के लिए पासवर्ड दर्ज करें और दबाएँ प्रवेश करना। - अंतर्गत प्रमाणपत्र फ़िंगरप्रिंट, कॉपी करें एसएचए256 कीमत।
Android API कुंजी पुनर्प्राप्त करें
जब आपने एक एंड्रॉइड सेटिंग पंजीकृत की है और एक ऐप हस्ताक्षर प्रदान किया है, तो आप अमेज़ॅन एप्लिकेशन के साथ अपने लॉगिन के लिए पंजीकरण पृष्ठ से एपीआई कुंजी पुनः प्राप्त कर सकते हैं। आपको उस API कुंजी को a में रखना होगा file आपके एंड्रॉइड प्रोजेक्ट में। जब तक आप ऐसा नहीं करते, ऐप को अमेज़ॅन प्राधिकरण सेवा के साथ लॉगिन के साथ संचार करने के लिए अधिकृत नहीं किया जाएगा।
- जाओ https://login.amazon.com.
- क्लिक ऐप कंसोल.
- में अनुप्रयोग बाईं ओर बॉक्स, अपना चयन करें
- के अंतर्गत अपना Android ऐप ढूंढें एंड्रॉइड सेटिंग्स (यदि आपने अभी तक एंड्रॉइड ऐप पंजीकृत नहीं किया है, तो देखें अमेज़ॅन ऐपस्टोर के लिए एक एंड्रॉइड ऐप जोड़ें).
- क्लिक एपीआई कुंजी मान उत्पन्न करें. एक पॉपअप विंडो आपकी एपीआई कुंजी प्रदर्शित करेगी। कुंजी की प्रतिलिपि बनाने के लिए क्लिक करें सबका चयन करें संपूर्ण का चयन करने के लिए
टिप्पणी: एपीआई कुंजी मान, आंशिक रूप से, उसके उत्पन्न होने के समय पर आधारित होता है। इस प्रकार, आपके द्वारा उत्पन्न आगामी एपीआई कुंजी मान मूल से भिन्न हो सकते हैं। आप अपने ऐप में इनमें से किसी भी एपीआई कुंजी मान का उपयोग कर सकते हैं क्योंकि वे सभी मान्य हैं। - देखना अपने प्रोजेक्ट में अपनी एपीआई कुंजी जोड़ें अपने एंड्रॉइड में एपीआई कुंजी जोड़ने के निर्देशों के लिए
अमेज़ॅन प्रोजेक्ट के साथ एक लॉगिन बनाना
इस अनुभाग में, आप सीखेंगे कि अमेज़ॅन के साथ लॉगिन के लिए एक नया एंड्रॉइड प्रोजेक्ट कैसे बनाएं, प्रोजेक्ट को कॉन्फ़िगर करें और अमेज़ॅन के साथ लॉगिन वाले उपयोगकर्ता को साइन इन करने के लिए प्रोजेक्ट में कोड जोड़ें। हम एंड्रॉइड स्टूडियो के चरणों का वर्णन करेंगे, लेकिन आप अपनी पसंद के किसी भी आईडीई या एंड्रॉइड डेवलपमेंट टूल पर समान चरण लागू कर सकते हैं।
निम्नलिखित विषय देखें:
- अमेज़ॅन प्रोजेक्ट के साथ एक नया लॉगिन बनाएं
- अमेज़न लाइब्रेरी के साथ लॉगिन स्थापित करें
- अमेज़ॅन लाइब्रेरी के साथ लॉगिन के लिए सामग्री सहायता सक्षम करें
- अपने ऐप के लिए नेटवर्क अनुमतियाँ सेट करें
- अपने प्रोजेक्ट में अपनी एपीआई कुंजी जोड़ें
- एस को हटा देंampले ऐप कस्टम डिबग कीस्टोर
- अपनी गतिविधि के लिए कॉन्फ़िगरेशन परिवर्तन संभालें
- अपने प्रोजेक्ट में एक प्राधिकरण गतिविधि जोड़ें
- अपने ऐप में अमेज़न बटन के साथ लॉगिन जोड़ें
- लॉग इन बटन को हैंडल करें और प्रो प्राप्त करेंfile डेटा
- स्टार्टअप में उपयोगकर्ता लॉगिन की जाँच करें
- स्पष्ट प्राधिकरण राज्य और लॉग आउट एक उपयोगकर्ता
- अमेज़ॅन प्राधिकरण प्रबंधक विधियों को समकालिक रूप से कॉल करें
अमेज़ॅन प्रोजेक्ट के साथ एक नया लॉगिन बनाएं
यदि आपके पास अमेज़ॅन के साथ लॉगिन का उपयोग करने के लिए अभी तक कोई ऐप प्रोजेक्ट नहीं है, तो एक बनाने के लिए नीचे दिए गए निर्देशों का पालन करें। यदि आपके पास कोई मौजूदा ऐप है, तो आगे बढ़ें अमेज़न लाइब्रेरी के साथ लॉगिन स्थापित करें .
- शुरू करना एंड्रॉइड डेवलपमेंट टूल.
- से File मेनू, का चयन करें नया और परियोजना.
- एक दर्ज करें आवेदन का नाम और कंपनी का नाम आपके लिए
- उसे दर्ज करें आवेदन और कंपनी का नाम उस पैकेज नाम के अनुरूप जिसे आपने अमेज़ॅन के साथ लॉगिन के साथ अपना ऐप पंजीकृत करते समय चुना था।
यदि आपने अभी तक अपना ऐप पंजीकृत नहीं किया है, तो एक चुनें पैकेज का नाम और फिर दिए गए निर्देशों का पालन करें अमेज़न के साथ लॉगिन के साथ पंजीकरण अपना प्रोजेक्ट बनाने के बाद अनुभाग। यदि आपके ऐप का पैकेज नाम पंजीकृत पैकेज नाम से मेल नहीं खाता है, तो अमेज़ॅन कॉल के साथ आपका लॉगिन सफल नहीं होगा। - एक चयन करें न्यूनतम आवश्यक एसडीके API 8 का: Android 2 (Froyo) या उच्चतर, और क्लिक करें अगला.
- आप जिस प्रकार की गतिविधि बनाना चाहते हैं उसे चुनें और क्लिक करें अगला.
- प्रासंगिक विवरण भरें और क्लिक करें खत्म करना.
अब आपके कार्यक्षेत्र में एक नया प्रोजेक्ट होगा जिसका उपयोग आप अमेज़ॅन के साथ लॉगिन कॉल करने के लिए कर सकते हैं।
अमेज़न लाइब्रेरी के साथ लॉगिन स्थापित करें
यदि आपने अभी तक एंड्रॉइड के लिए अमेज़ॅन एसडीके के साथ लॉगिन डाउनलोड नहीं किया है, तो देखें के साथ लॉगिन स्थापित करें एंड्रॉइड के लिए अमेज़ॅन एसडीके (पृष्ठ 4)
- अपने प्रोजेक्ट को एंड्रॉइड डेवलपर टूल्स में खोलें प्रोजेक्ट एक्सप्लोरर, अपना राइट-क्लिक करें परियोजना.
- यदि किसी फ़ोल्डर को कॉल किया जाता है लिब्स पहले से मौजूद नहीं है, बनाएं
- कॉपी करें अमेज़ॅन-sdk.jar के साथ लॉगिन करें file से File प्रणाली, और फिर इसे इसमें पेस्ट करें लिब्स आपके प्रोजेक्ट/ऐप के अंतर्गत निर्देशिका।
- दाएँ क्लिक करें अमेज़ॅन-sdk.jar के साथ लॉगिन करें, और जाँच करें लाइब्रेरी के रूप में जोड़ें
एक्लिप्स में अमेज़ॅन लाइब्रेरी के साथ लॉगिन के लिए सामग्री सहायता सक्षम करें
एंड्रॉइड प्रोजेक्ट में एक्लिप्स सामग्री सहायता समर्थन को सक्षम करने के लिए इसका उपयोग करना आवश्यक है ।गुण file. सामग्री सहायता पर अधिक जानकारी के लिए देखें सामग्री/कोड सहायता onhelp.eclipse.org.
एंड्रॉइड प्रोजेक्ट में एक्लिप्स सामग्री सहायता समर्थन को सक्षम करने के लिए इसका उपयोग करना आवश्यक है ।गुण file. सामग्री सहायता पर अधिक जानकारी के लिए देखें सामग्री/कोड सहायता onhelp.eclipse.org.
- In विंडोज़ एक्सप्लोरर, नेविगेट करें डॉक्स एंड्रॉइड के लिए अमेज़ॅन एसडीके के साथ लॉगिन के लिए फ़ोल्डर और फ़ोल्डर को कॉपी करें
- अपना प्रोजेक्ट खुला होने पर, पर जाएँ पैकेज एक्सप्लोरर और चुनें लिब्स क्लिक संपादन करना मुख्य मेनू से और चुनें पेस्ट करें. अब आपके पास एक होना चाहिए libs\docs निर्देशिका.
- का चयन करें लिब्स क्लिक File मुख्य मेनू से और चुनें नया औरFile.
- में नया File संवाद, दर्ज करें अमेज़ॅन-sdk.jar.properties के साथ लॉगिन करें और क्लिक करें खत्म करना.
- ग्रहण खुलना चाहिए अमेज़ॅन-sdk.jar.properties के साथ लॉगिन करें पाठ संपादक में. टेक्स्ट एडिटर में, निम्न पंक्ति जोड़ें file:
दस्तावेज़=दस्तावेज़ - से File मेनू पर क्लिक करें बचाना।
- परिवर्तनों को प्रभावी करने के लिए आपको एक्लिप्स को पुनः आरंभ करने की आवश्यकता हो सकती है
अपने ऐप के लिए नेटवर्क अनुमतियाँ सेट करें
आपके ऐप को अमेज़ॅन के साथ लॉगिन का उपयोग करने के लिए, उसे इंटरनेट तक पहुंच और नेटवर्क स्थिति की जानकारी तक पहुंच होनी चाहिए। आपके ऐप को आपके एंड्रॉइड मेनिफ़ेस्ट में इन अनुमतियों का दावा करना होगा, यदि ऐसा पहले से नहीं है।
टिप्पणी: नीचे दिए गए प्रक्रिया चरण ग्रहण में अनुमतियाँ जोड़ने के लिए विशिष्ट हैं। यदि आप एंड्रॉइड स्टूडियो या किसी भिन्न आईडीई का उपयोग कर रहे हैं, तो आप नीचे दिए गए सभी क्रमांकित चरणों को छोड़ सकते हैं। इसके बजाय, स्क्रीनशॉट के नीचे प्रदर्शित कोड की पंक्तियों को कॉपी करें और उन्हें इसमें पेस्ट करें AndroidManifest.xml file, एप्लिकेशन ब्लॉक के बाहर।
- In पैकेट एक्सप्लोरर, डबल क्लिक करें एक्सएमएल.
- पर अनुमतियां टैब, क्लिक करें जोड़ना.
- चुनना अनुमति का उपयोग करता है और क्लिक करें OK.
- के अधिकार के लिए अनुमतियां, खोजें उपयोग की अनुमति के लिए विशेषताएँ
- में नाम बॉक्स, दर्ज करें अनुमति। इंटरनेट या इसे ड्रॉप-डाउन से चुनें.
- पर अनुमतियां टैब, क्लिक करें जोड़ना
- चुनना अनुमति का उपयोग करता है और क्लिक करें OK.
- में नाम बॉक्स, दर्ज करें अनुमति.ACCESS_NETWORK_STATE या इसे ड्रॉप-डाउन से चुनें
- से File मेनू पर क्लिक करें बचाना.
आपकी मेनिफेस्ट अनुमतियों में अब निम्नलिखित मान होने चाहिए:
में AndroidManifest.xml टैब, अब आपको इन प्रविष्टियों को मेनिफेस्ट तत्व के अंतर्गत देखना चाहिए:
अपने प्रोजेक्ट में अपनी एपीआई कुंजी जोड़ें
जब आप अपने एंड्रॉइड एप्लिकेशन को अमेज़ॅन के साथ लॉगिन के साथ पंजीकृत करते हैं, तो आपको एक एपीआई कुंजी सौंपी जाती है। यह एक पहचानकर्ता है जिसका उपयोग अमेज़ॅन प्राधिकरण प्रबंधक आपके एप्लिकेशन को अमेज़ॅन प्राधिकरण सेवा के साथ लॉगिन में पहचानने के लिए करेगा। यदि आप अपने ऐप पर हस्ताक्षर करने के लिए अमेज़ॅन ऐपस्टोर का उपयोग कर रहे हैं, तो ऐपस्टोर स्वचालित रूप से एपीआई कुंजी प्रदान करेगा। यदि आप अमेज़ॅन ऐपस्टोर का उपयोग नहीं कर रहे हैं, तो अमेज़ॅन प्राधिकरण प्रबंधक इस मान को रनटाइम पर लोड करता है api_key.txt file में संपत्ति निर्देशिका.
- यदि आपके पास अभी तक अपनी एपीआई कुंजी नहीं है, तो दिए गए निर्देशों का पालन करें Android API कुंजी पुनर्प्राप्त करें (पृष्ठ 11)
- आपके ADT प्रोजेक्ट के खुले होने पर, से File मेनू पर क्लिक करें नया और चुनें शीर्षक रहित पाठ File. अब आपके पास टेक्स्ट के लिए एक संपादक विंडो होनी चाहिए file नाम शीर्षकहीन 1. टेक्स्ट में अपनी एपीआई कुंजी जोड़ें
- से File मेनू पर क्लिक करें के रूप रक्षित करें.
- में के रूप रक्षित करें संवाद, चयन करें संपत्ति आपके प्रोजेक्ट की निर्देशिका को मूल फ़ोल्डर के रूप में। के लिए File नाम, प्रवेश करना TXT.
एस को हटा देंampले ऐप कस्टम डिबग कीस्टोर
टिप्पणी: यह चरण केवल तभी आवश्यक है जब आप एक्लिप्स का उपयोग कर रहे हों; यदि आप एंड्रॉइड स्टूडियो का उपयोग कर रहे हैं, तो इस अनुभाग को छोड़ दें।
यदि आपने एंड्रॉइड के लिए अमेज़ॅन के साथ लॉगिन स्थापित किया हैampएप्लिकेशन को उसी कार्यक्षेत्र में ले जाएं जिसका उपयोग आप अपने एंड्रॉइड ऐप के लिए कर रहे हैं, आपके पास कार्यक्षेत्र के लिए एक कस्टम डिबग कीस्टोर सेट हो सकता है। अपनी स्वयं की एपीआई कुंजी का उपयोग करने के लिए आपको कस्टम डिबग कीस्टोर को साफ़ करना होगा।
- मुख्य मेनू से, क्लिक करें खिड़की और चुनें प्राथमिकताएं.
- में प्राथमिकताएं संवाद, का चयन करें एंड्रॉयड और निर्माण.
- इसे क्लियर करें रिवाज़ डिबग कीस्टोर
- क्लिक OK.
अपनी गतिविधि के लिए कॉन्फ़िगरेशन परिवर्तन संभालें
यदि कोई उपयोगकर्ता लॉग इन करते समय स्क्रीन ओरिएंटेशन बदलता है या डिवाइस की कीबोर्ड स्थिति बदलता है, तो यह वर्तमान गतिविधि को फिर से शुरू करने का संकेत देगा। यह पुनरारंभ अप्रत्याशित रूप से लॉगिन स्क्रीन को खारिज कर देगा। इसे रोकने के लिए, आपको वह गतिविधि सेट करनी चाहिए जो उन कॉन्फ़िगरेशन परिवर्तनों को मैन्युअल रूप से संभालने के लिए अधिकृत विधि का उपयोग करती है। यह गतिविधि को पुनः प्रारंभ होने से रोकेगा.
- In पैकेट एक्सप्लोरर, डबल क्लिक करें एक्सएमएल.
- में आवेदन अनुभाग में, उस गतिविधि का पता लगाएं जो अमेज़ॅन के साथ लॉगिन को संभालेगी (उदाहरण के लिए)।ampले, मुख्य गतिविधि).
- चरण 2 में पाई गई गतिविधि में निम्नलिखित विशेषता जोड़ें:
android:configChanges='कीबोर्ड|कीबोर्डहिडन|ओरिएंटेशन' या एपीआई 13 या इससे अधिक के लिए:
android:configChanges='कीबोर्ड|कीबोर्डहिडन|ओरिएंटेशन|स्क्रीनसाइज' - से File मेनू पर क्लिक करें बचाना
अब, जब कोई कीबोर्ड या डिवाइस ओरिएंटेशन परिवर्तन होता है, तो एंड्रॉइड कॉल करेगा ऑनकॉन्फिगरेशन बदला गया आपकी गतिविधि के लिए विधि. आपको इस फ़ंक्शन को लागू करने की आवश्यकता नहीं है जब तक कि इन कॉन्फ़िगरेशन परिवर्तनों का कोई पहलू न हो जिसे आप अपने ऐप के लिए संभालना चाहते हैं
जब उपयोगकर्ता अमेज़ॅन बटन के साथ लॉगिन पर क्लिक करता है, तो एपीआई लॉन्च होगा web ब्राउज़र उपयोगकर्ता को एक लॉगिन और सहमति पृष्ठ प्रस्तुत करेगा। इस ब्राउज़र गतिविधि को काम करने के लिए, आपको अपने मेनिफेस्ट में AuthorizationActivity जोड़ना होगा।
- In पैकेट एक्सप्लोरर, डबल क्लिक करें एक्सएमएल.
- में आवेदन अनुभाग में, “com.ex” के स्थान पर निम्नलिखित कोड जोड़ेंampइस ऐप के लिए अपने पैकेज नाम के साथ "le.app" लिखें:
<गतिविधि एंड्रॉइड:नाम=
“com.amazon.identity.auth.device.authorization.AuthorizationActivity” android:theme=”@android:style/Theme.NoDisplay” android:allowTaskReparenting=”true” android:launchMode=”singleTask”>
<action android:name=”android.intent.action.VIEW” />
<डेटा
android:host=”com.example.app” android:scheme=”amzn” />
आपका ऐप. यह अनुभाग अमेज़ॅन छवि के साथ एक आधिकारिक लॉगिन डाउनलोड करने और इसे एंड्रॉइड इमेजबटन के साथ जोड़ने के चरण देता है।
- अपने ऐप में एक मानक ImageButton जोड़ें।
एंड्रॉइड बटन और इमेजबटन क्लास पर अधिक जानकारी के लिए देखें बटन Developer.android.com पर। - अपने बटन को एक आईडी दें.
बटन XML घोषणा में, android:id विशेषता को @+id/login_with_amazon पर सेट करें। पूर्व के लिएampपर:android:id=”@+id/login_with_amazon” - एक बटन छवि चुनें।
अमेज़न के साथ हमारे लॉगिन से परामर्श करें शैली दिशानिर्देश बटन की एक सूची के लिए जिसे आप अपने ऐप में उपयोग कर सकते हैं। की एक प्रति डाउनलोड करें LWA_Android.zip file. आपके ऐप द्वारा समर्थित प्रत्येक स्क्रीन घनत्व (xxhdpi, xhdpi, hdpi, mdpi, या tvdpi) के लिए अपने पसंदीदा बटन की एक प्रति निकालें। एंड्रॉइड में एकाधिक स्क्रीन घनत्व का समर्थन करने के बारे में अधिक जानकारी के लिए देखें वैकल्पिक लेआउट डेवलपर.android.com पर "एकाधिक स्क्रीन का समर्थन करना" विषय में। - उपयुक्त बटन छवि की प्रतिलिपि बनाएँ fileअपने प्रोजेक्ट में जोड़ें.
आपके द्वारा समर्थित प्रत्येक स्क्रीन घनत्व (xhdpi, hdpi, mdpi, या ldpi) के लिए, डाउनलोड किए गए बटन को कॉपी करें पुनः/आकर्षित करने योग्य उस स्क्रीन घनत्व के लिए निर्देशिका। - बटन छवि घोषित करें.
बटन XML घोषणा में, आपके द्वारा चुने गए बटन के नाम पर android:src विशेषता सेट करें। पूर्व के लिएampपर:android:src='@drawable/btnlwa_gold_loginwithamazon.png' 6. अपना ऐप लोड करें, और सत्यापित करें कि बटन में अब अमेज़ॅन छवि के साथ लॉगिन है। आपको यह सत्यापित करना चाहिए कि बटन आपके द्वारा समर्थित प्रत्येक स्क्रीन घनत्व के लिए ठीक से प्रदर्शित होता है।
यह अनुभाग बताता है कि ऑथराइज़ और गेटप्रो को कैसे कॉल करेंfile किसी उपयोगकर्ता को लॉग इन करने और उनके प्रो को पुनः प्राप्त करने के लिए एपीआईfile आंकड़े। इसमें आपके ऐप के ऑनक्रिएट विधि में अमेज़ॅन बटन के साथ लॉगिन के लिए ऑनक्लिक श्रोता बनाना शामिल है।
- अपने एंड्रॉइड प्रोजेक्ट में अमेज़ॅन के साथ लॉगिन जोड़ें। देखना अमेज़न लाइब्रेरी के साथ लॉगिन स्थापित करें .
- अपने स्रोत के लिए अमेज़न एपीआई के साथ लॉगिन आयात करें
अमेज़ॅन एपीआई के साथ लॉगिन आयात करने के लिए, अपने स्रोत में निम्नलिखित आयात विवरण जोड़ें file:आयात com.amazon.identity.auth.device.AuthError; आयात
com.amazon.identity.auth.device.authorization.api.
अमेज़ॅन प्राधिकरण प्रबंधक; आयात
com.amazon.identity.auth.device.authorization.api. प्राधिकरण श्रोता; आयात com.amazon.identity.auth.device.authorization.api.AuthzConstents; - प्रारंभ अमेज़ॅन प्राधिकरण प्रबंधक।
आपको एक घोषित करने की आवश्यकता होगी अमेज़ॅन प्राधिकरण प्रबंधक वेरिएबल और क्लास का एक नया उदाहरण बनाएं। एक नया उदाहरण बनाने के लिए केवल आपके वर्तमान एप्लिकेशन संदर्भ और एक खाली बंडल की आवश्यकता होती है। आरंभ करने के लिए सबसे अच्छी जगह अमेज़ॅन प्राधिकरण प्रबंधक में है ऑनक्रिएट आपकी गतिविधि का तरीका. पूर्व के लिएampपर: - एक AuthorizeLiistener बनाएँ।
अधिकृत श्रोता AuthorizatioinListener इंटरफ़ेस को कार्यान्वित करता है, और इसके परिणाम को संसाधित करेगा कॉल को अधिकृत करें. इसमें तीन विधियाँ शामिल हैं: oinSuccess, त्रुटि पर, और पररद्द करें. प्रत्येक विधि को या तो एक बंडल या एक प्राप्त होता है लेखकत्रुटि वस्तु।निजी वर्ग AuthorizeListener, AuthorizationListener लागू करता है{
/* प्राधिकरण सफलतापूर्वक पूरा हुआ। */
@ ऑवरराइड
सफलता पर सार्वजनिक शून्य (बंडल प्रतिक्रिया) {
}
/* एप्लिकेशन को अधिकृत करने के प्रयास के दौरान एक त्रुटि हुई।
*/
@ ऑवरराइड
सार्वजनिक शून्य onError(AuthError ae) {
}
/* प्राधिकरण पूरा होने से पहले ही रद्द कर दिया गया था। */
@ ऑवरराइड
सार्वजनिक शून्य onCancel (बंडल कारण) {
}
} - पुकारना AmazonAuthorizationManager.authorize।
में ऑनक्लिक अमेज़ॅन बटन के साथ आपके लॉगिन के लिए हैंडलर, उपयोगकर्ता को लॉग इन करने और आपके एप्लिकेशन को अधिकृत करने के लिए अधिकृत करने के लिए कॉल करें।
यह विधि ग्राहक को निम्नलिखित में से किसी एक तरीके से अधिकृत करने के लिए जिम्मेदार है:- सिस्टम ब्राउज़र पर स्विच करता है और ग्राहक को साइन इन करने और अनुरोध पर सहमति देने देता है
- पर स्विच करता है web view एक सुरक्षित संदर्भ में, ग्राहक को साइन इन करने और अनुरोध पर सहमति देने के लिए
#2 के लिए यह सुरक्षित संदर्भ वर्तमान में एंड्रॉइड डिवाइस पर अमेज़ॅन शॉपिंग ऐप के रूप में उपलब्ध कराया गया है। फायर ओएस चलाने वाले अमेज़ॅन-निर्मित डिवाइस (उदाहरण के लिए)।ampकिंडल फायर, फायर फोन और फायर टीवी) हमेशा इस विकल्प का उपयोग करें, भले ही डिवाइस पर कोई अमेज़ॅन शॉपिंग ऐप न हो। इस वजह से, यदि ग्राहक पहले से ही अमेज़ॅन शॉपिंग ऐप में साइन इन है, तो यह एपीआई साइन-इन पेज को छोड़ देगा, जिससे एक केवल हस्ताक्षर के ऊपर ग्राहक के लिए अनुभव.
जब आपका एप्लिकेशन अधिकृत होता है, तो इसे एक या अधिक डेटा सेट के लिए अधिकृत किया जाता है जिसे कहा जाता है कार्यक्षेत्र. पहला पैरामीटर स्कोप की एक श्रृंखला है जिसमें उपयोगकर्ता डेटा शामिल है जिसे आप अमेज़ॅन के साथ लॉगिन से अनुरोध कर रहे हैं। जब कोई उपयोगकर्ता पहली बार आपके ऐप में लॉग इन करेगा, तो उन्हें आपके द्वारा अनुरोधित डेटा की एक सूची प्रस्तुत की जाएगी और अनुमोदन के लिए कहा जाएगा। अमेज़ॅन के साथ लॉगिन वर्तमान में तीन क्षेत्रों का समर्थन करता है: प्रोfile, जिसमें उपयोगकर्ता का नाम, ईमेल पता और अमेज़ॅन खाता आईडी शामिल है; समर्थकfile:यूज़र आईडी, जिसमें केवल अमेज़न खाता आईडी शामिल है; तथा डाक कोड, जिसमें उपयोगकर्ता का ज़िप / पोस्टल कोड होता है।
ऑथराइज़ को कॉल करने का सबसे अच्छा तरीका एसिंक्रोनस है, इसलिए आपको यूआई थ्रेड को ब्लॉक करने या अपना स्वयं का वर्कर थ्रेड बनाने की आवश्यकता नहीं है। आवाज देना असिंक्रोनस रूप से अधिकृत करें, उस ऑब्जेक्ट को पास करें जो इसका समर्थन करता है प्राधिकरण श्रोताइंटरफ़ेस अंतिम पैरामीटर के रूप में:निजी AmazonAuthorizationManager mAuthManager; @ ऑवरराइड
संरक्षित शून्य onCreate(बंडल savedInstanceState) {
super.onCreate (saveInstanceState);
mAuthManager = नया AmazonAuthorizationManager(यह, बंडल.EMPTY);//login_with_amazon आईडी वाला बटन ढूंढें
// और एक क्लिक हैंडलर सेट करें
mLoginButton = (बटन) ढूंढेंViewById(R.id.login_with_amazon);
mLoginButton.setOnClickListener(नया OnClickListener() {
@ ऑवरराइड
सार्वजनिक शून्य ऑनक्लिक(View वी) {
mAuthManager.authorize(
नई स्ट्रिंग []{“profile","डाक कोड"},
बंडल.ईएमपीटीवाई, नया ऑथराइज़लिस्टनर());
}
});
} - एक बनाने के प्रोfileश्रोता।
प्रोfileश्रोता उस वर्ग के लिए हमारा नाम है जो इसे लागू करता है APIListener इंटरफ़ेस, और के परिणाम को संसाधित करेगा समर्थक बनोfile पुकारना। APIListener इसमें दो विधियाँ शामिल हैं: onSuccess और onError (यह समर्थन नहीं करता है onरद्द करें क्योंकि रद्द करने का कोई तरीका नहीं है समर्थक बनोfile पुकारना)। onSuccess प्रो के साथ एक बंडल ऑब्जेक्ट प्राप्त करता हैfile डेटा, जबकि ऑनएरिरोर प्राप्त करता है लेखकत्रुटि त्रुटि पर जानकारी के साथ ऑब्जेक्ट।प्राइवेट क्लास प्रोfileश्रोता APIListener लागू करता है { /* समर्थक बनोfile सफलतापूर्वक पूरा। */ @ओवरराइड
सफलता पर सार्वजनिक शून्य (बंडल प्रतिक्रिया) {}
/* प्रो प्राप्त करने के प्रयास के दौरान एक त्रुटि हुईfile. */ @ओवरराइड
सार्वजनिक शून्य onError(AuthError ae) {
}
} - अमल में लाना onSuccess आपके लिए अधिकृत श्रोता.
In सफलता पर, पुकारना AmazonAuthorizationManager.getProfile ग्राहक समर्थक को पुनः प्राप्त करने के लिएfile. समर्थक बनोfile, अधिकृत की तरह, एक अतुल्यकालिक श्रोता इंटरफ़ेस का उपयोग करता है। के लिए समर्थक बनोfile, वह इंटरफ़ेस है APIListener, प्राधिकरणListener नहीं।
/* प्राधिकरण सफलतापूर्वक पूरा हुआ। */ @ओवरराइड
सफलता पर सार्वजनिक शून्य (बंडल प्रतिक्रिया) {
mAuthManager.getProfile(नये प्रोfileश्रोता());} - अमल में लाना onSuccessfor आपका प्रोfileश्रोता।
onसफलताहै दो मुख्य कार्य: समर्थक को पुनः प्राप्त करनाfile प्रतिक्रिया बंडल से डेटा, और डेटा को यूआई में पास करने के लिए। अपडेटप्रोfileदाताइस एक काल्पनिक फ़ंक्शन जिसे आपका ऐप प्रो प्रदर्शित करने के लिए कार्यान्वित कर सकता हैfile विवरण। सेटलॉगइनस्टेट, एक अन्य काल्पनिक फ़ंक्शन, यह इंगित करेगा कि उपयोगकर्ता लॉग इन है और उन्हें इसका एक साधन देगा लॉग आउट कर रहा हूं।
समर्थक को पुनः प्राप्त करने के लिएfile बंडल से डेटा, हम द्वारा संग्रहीत नामों का उपयोग करते हैं ऑथ्ज़कॉन्स्टेंट्स कक्षा। onSuccess बंडल में प्रो शामिल हैfile BUNDLE_KEY.PRO में डेटाFILE बंडल।
प्रो के भीतरfile बंडल, स्कोप डेटा को नीचे अनुक्रमित किया गया है प्रोFILE_कुंजी.नाम, प्रोFILE_कुंजी.ईमेल, प्रोFILE_कुंजी.USER_ID, और प्रोFILE_कुंजी.पोस्टल_कोड. समर्थकFILE_कुंजी.POSTAL_CODE यदि आप अनुरोध करते हैं तो ही शामिल किया जाता है डाक कोड दायरा।@ ऑवरराइड
सफलता पर सार्वजनिक शून्य (बंडल प्रतिक्रिया) {
// बंडल बंडल प्रो से हमें आवश्यक डेटा पुनर्प्राप्त करेंfileबंडल = प्रतिक्रिया.getBundle(
AuthzConstents.BUNDLE_KEY.PROFILE.वैल);
स्ट्रिंग नाम = प्रोfileबंडल.गेटस्ट्रिंग(
AuthzConstents.PROFILE_KEY.NAME.val);
स्ट्रिंग ईमेल = प्रोfileबंडल.गेटस्ट्रिंग(
AuthzConstents.PROFILE_KEY.EMAIL.VAL);
स्ट्रिंग खाता = प्रोfileबंडल.गेटस्ट्रिंग(
AuthzConstents.PROFILE_KEY.USER_ID.val);
स्ट्रिंग ज़िपकोड = प्रोfileबंडल.गेटस्ट्रिंग(
AuthzConstents.PROFILE_KEY.POSTAL_CODE.val);
runOnUiThread(नया Runnable() { @Override
सार्वजनिक शून्य रन() {
अपडेटप्रोfileडेटा (नाम, ईमेल, खाता, ज़िपकोड);
}
});
} - अमल में लाना त्रुटिपर आपके लिए प्रोfileश्रोता।
त्रुटिपर इसमें शामिल है एक लेखकत्रुटि त्रुटि के बारे में विवरण युक्त वस्तु।/* प्रो प्राप्त करने के प्रयास के दौरान एक त्रुटि हुईfile. */ @ओवरराइड
सार्वजनिक शून्य onError(AuthError ae) {
/* पुनः प्रयास करें या उपयोगकर्ता को त्रुटि के बारे में सूचित करें */
} - अमल में लाना onErrorfor आपका अधिकृत श्रोता.
/* एप्लिकेशन को अधिकृत करने के प्रयास के दौरान एक त्रुटि हुई।
*/
@ ऑवरराइड
सार्वजनिक शून्य onError(AuthError ae) {
/* उपयोगकर्ता को त्रुटि के बारे में सूचित करें */
} - अमल में लाना onरद्द करें आपका अधिकृत श्रोता.
क्योंकि प्राधिकरण प्रक्रिया उपयोगकर्ता को एक लॉगिन स्क्रीन (और संभवतः एक सहमति स्क्रीन) प्रस्तुत करती है web ब्राउज़र (या a webview), उपयोगकर्ता के पास लॉगिन रद्द करने या इससे दूर नेविगेट करने का अवसर होगा web पृष्ठ। यदि वे स्पष्ट रूप से लॉगिन प्रक्रिया रद्द कर देते हैं, onरद्द करें कहा जाता है। अगर ऑन कैंसिलिस कॉल करने पर, आप अपना यूआई रीसेट करना चाहेंगे।/* प्राधिकरण पूरा होने से पहले ही रद्द कर दिया गया था। */
@ ऑवरराइड
सार्वजनिक शून्य onCancel (बंडल कारण) {
/* यूआई को रेडी-टू-लॉगिन स्थिति पर रीसेट करें */
}टिप्पणी: यदि उपयोगकर्ता ब्राउज़र में लॉगिन स्क्रीन से दूर चला जाता है या web view और आपके ऐप पर वापस स्विच करता है, एसडीके यह पता नहीं लगाएगा कि लॉगिन पूरा नहीं हुआ था। यदि आप लॉगिन पूरा होने से पहले अपने ऐप में उपयोगकर्ता गतिविधि का पता लगाते हैं, तो आप मान सकते हैं कि वे ब्राउज़र से दूर चले गए हैं और तदनुसार प्रतिक्रिया कर सकते हैं।
स्टार्टअप में उपयोगकर्ता लॉगिन की जाँच करें
यदि कोई उपयोगकर्ता आपके ऐप में लॉग इन करता है, ऐप बंद कर देता है, और बाद में ऐप को पुनरारंभ करता है, तो ऐप अभी भी डेटा पुनर्प्राप्त करने के लिए अधिकृत है। उपयोगकर्ता स्वचालित रूप से लॉग आउट नहीं होता है. स्टार्टअप पर, यदि आपका ऐप अभी भी अधिकृत है तो आप उपयोगकर्ता को लॉग इन दिखा सकते हैं। यह अनुभाग बताता है कि ऐप अभी भी अधिकृत है या नहीं यह देखने के लिए getToken का उपयोग कैसे करें।
- एक बनाने के टोकन श्रोता।
टोकन श्रोता लागू करता है APIListener इंटरफ़ेस, और getToken कॉल के परिणाम को संसाधित करेगा। APIListener इसमें दो विधियाँ शामिल हैं: onSuccess और त्रुटिपर (यह समर्थन नहीं करता onरद्द करें क्योंकि रद्द करने का कोई तरीका नहीं है टोकन प्राप्त करें पुकारना)। onSuccess जबकि, टोकन डेटा के साथ एक बंडल ऑब्जेक्ट प्राप्त करता है त्रुटिपर प्राप्त करता है लेखकत्रुटि त्रुटि पर जानकारी के साथ ऑब्जेक्ट।प्राइवेट क्लास टोकन लिस्टनर एपीआई लिस्टनर लागू करता है { /* getToken सफलतापूर्वक पूरा हुआ। */ @ओवरराइड
सफलता पर सार्वजनिक शून्य (बंडल प्रतिक्रिया) {
}
/*टोकन प्राप्त करने के प्रयास के दौरान एक त्रुटि हुई। */ @ओवरराइड
सार्वजनिक शून्य onError(AuthError ae) {
}
} - में ऑनस्टार्ट आपकी गतिविधि की विधि, कॉल करें टोकन प्राप्त करें यह देखने के लिए कि क्या आवेदन अभी भी अधिकृत है।
टोकन प्राप्त करें कच्चे एक्सेस टोकन को पुनः प्राप्त करता है अमेज़ॅन प्राधिकरण प्रबंधक ग्राहक समर्थक तक पहुँचने के लिए उपयोग करता हैfile. यदि टोकन मान शून्य नहीं है, तो ऐप अभी भी अधिकृत है और कॉल किया जा सकता है समर्थक बनोfile सफल होना चाहिए। getTokenआवश्यकता है वही स्कोप जिन्हें आपने अधिकृत करने के लिए अपनी कॉल में अनुरोध किया था।
getTokensupports getPro की तरह ही अतुल्यकालिक कॉलfile, इसलिए आपको यूआई थ्रेड को ब्लॉक करने या अपना स्वयं का वर्कर थ्रेड बनाने की आवश्यकता नहीं है। GetToken को एसिंक्रोनस रूप से कॉल करने के लिए, एक ऑब्जेक्ट पास करें जो इसका समर्थन करता है APIListener अंतिम पैरामीटर के रूप में इंटरफ़ेस।@ ऑवरराइड
संरक्षित शून्य ऑनस्टार्ट(){
सुपर.ऑनस्टार्ट
();mAuthManager.getToken(नया स्ट्रिंग []{“profile","डाक कोड"},
नया
टोकनलिस्टनर());
} - अमल में लाना onSuccess आपके लिए टोकन श्रोता।
onसफलताहै दो कार्य: बंडल से टोकन पुनर्प्राप्त करना, और यदि टोकन वैध है, तो कॉल करना समर्थक बनोfile.
बंडल से टोकन डेटा पुनर्प्राप्त करने के लिए, हम द्वारा संग्रहीत नामों का उपयोग करते हैं ऑथ्ज़कॉन्स्टेंट्स कक्षा। onSuccess बंडल में BUNDLE_KEY.TOKEN मान में टोकन डेटा शामिल है। यदि वह मान शून्य नहीं है, तो यह उदाampले कॉल समर्थक बनोfile उसी श्रोता का उपयोग करना जो आपने पिछले अनुभाग में घोषित किया था (चरण 7 और 8 देखें)।/* getToken सफलतापूर्वक पूरा हुआ। */
@ ऑवरराइड
सफलता पर सार्वजनिक शून्य (बंडल प्रतिक्रिया) {
अंतिम स्ट्रिंग authzToken =
प्रतिक्रिया.getString(AuthzConstents.BUNDLE_KEY.TOKEN.val);
यदि (!TextUtils.isEmpty(authzToken))
{
// प्रो को पुनः प्राप्त करेंfile डेटा
mAuthManager.getProfile(नये प्रोfileश्रोता());
}
}
ClearAuthorizationState विधि AmazonAuthorizationManager स्थानीय डेटा स्टोर से उपयोगकर्ता के प्राधिकरण डेटा को साफ़ कर देगी। ऐप को प्रो पुनः प्राप्त करने के लिए उपयोगकर्ता को फिर से लॉग इन करना होगाfile आंकड़े। किसी उपयोगकर्ता को लॉग आउट करने के लिए या ऐप में लॉगिन समस्याओं का निवारण करने के लिए इस पद्धति का उपयोग करें।
- लॉगआउट लागू करें
जब किसी उपयोगकर्ता ने सफलतापूर्वक लॉग इन किया है, तो आपको एक लॉगआउट तंत्र प्रदान करना चाहिए ताकि वे अपने समर्थक को साफ़ कर सकेंfile डेटा और पहले से अधिकृत दायरे। आपका तंत्र एक हाइपरलिंक, या एक मेनू आइटम हो सकता है। इसके लिए पूर्वampले हम एक बनाएंगे ऑनक्लिक एक बटन के लिए विधि. - अपने लॉगआउट हैंडलर में, कॉल करें स्पष्टप्राधिकरणराज्य। स्पष्टप्राधिकरणराज्य उपयोगकर्ता के प्राधिकरण डेटा (एक्सेस टोकन, प्रो) को हटा देगाfile) स्थानीय स्टोर से। स्पष्टप्राधिकरणराज्य लेता है ए के अलावा कोई पैरामीटर नहीं APIListener सफलता लौटाने के लिए या
- अज्ञात घोषित करें APIListener.
अनाम कक्षाएं लागू करने के लिए एक नई कक्षा घोषित करने का एक उपयोगी विकल्प हैं APIListener. देखना लॉग इन बटन को हैंडल करें और प्रो प्राप्त करेंfile डेटा (पृ. 17) एक के लिए exampलेटैट श्रोता वर्ग घोषित करता है। - अमल में लाना onSuccess के अंदर APIListener
कब स्पष्ट प्राधिकरण स्थिति सफल होने पर आपको उपयोगकर्ता के संदर्भ हटाने के लिए अपने यूआई को अपडेट करना चाहिए, और एक लॉगिन तंत्र प्रदान करना चाहिए जिसका उपयोग उपयोगकर्ता फिर से लॉग इन करने के लिए कर सकते हैं। - अमल में लाना त्रुटिपर के अंदर APIListener.
If ClearAuthorizationStatereturns एक त्रुटि, आप उपयोगकर्ता को दोबारा लॉग आउट करने का प्रयास करने दे सकते हैं।@ ऑवरराइड
संरक्षित शून्य onCreate(बंडल savedInstanceState) {
super.onCreate (saveInstanceState);
/* पिछला onCreate घोषणाएँ छोड़ी गईं */
// लॉगआउट आईडी वाला बटन ढूंढें और एक क्लिक हैंडलर सेट करें
mLogoutButton = (बटन) ढूंढेंViewById(R.id.logout);
mLogoutButton.setOnClickListener(नया OnClickListener() {
@ ऑवरराइड
सार्वजनिक शून्य ऑनक्लिक(View वी) {
mAuthManager.clearAuthorizationState(नया
APIListener() {
@ ऑवरराइड
सफलता पर सार्वजनिक शून्य (बंडल परिणाम) {
// यूआई में लॉग आउट स्थिति सेट करें
}
@ ऑवरराइड
सार्वजनिक शून्य onError(AuthError authError) {
// त्रुटि लॉग करें
}
});
}
});
}
कुछ अमेज़ॅन प्राधिकरण प्रबंधक विधियाँ भविष्य की वस्तु लौटाती हैं। यह आपको श्रोता को पैरामीटर के रूप में पास करने के बजाय विधि को समकालिक रूप से कॉल करने की अनुमति देता है। यदि आप फ्यूचर ऑब्जेक्ट का उपयोग करते हैं, तो आपको इसे यूआई थ्रेड पर उपयोग नहीं करना चाहिए। यदि आप यूआई थ्रेड को पांच सेकंड से अधिक समय तक ब्लॉक करते हैं तो आपको एक एएनआर (एप्लिकेशन नॉट रिस्पॉन्डिंग) प्रॉम्प्ट मिलेगा। लॉगिन बटन को हैंडल करें और प्रो प्राप्त करेंfile डेटा पूर्वampले , द onSuccess के लिए विधि अधिकृत श्रोता द्वारा बनाए गए वर्कर थ्रेड के साथ कॉल किया जाता है अमेज़ॅन प्राधिकरण प्रबंधक। इसका मतलब है कि getPiro को कॉल करने के लिए उस थ्रेड का उपयोग करना सुरक्षित हैfile समकालिक रूप से। सिंक्रोनस कॉल करने के लिए, रिटर्न वैल्यू असाइन करें getPirofile किसी Future ऑब्जेक्ट पर, और कॉल करें gitmethod उस ऑब्जेक्ट पर विधि पूरी होने तक प्रतीक्षा करें।
भविष्य.प्राप्त करें एक बंडल ऑब्जेक्ट लौटाता है जिसमें a शामिल है भविष्य_प्रकार का मूल्य सफलता, त्रुटि, or रद्द करना। यदि विधि सफल रही, तो उसी बंडल में PRO शामिल होगाFILE_प्रोफेसर के लिए मुख्य मानfile आंकड़े। पूर्व के लिएampपर:
/* प्राधिकरण सफलतापूर्वक पूरा हुआ। */ @ ऑवरराइड सफलता पर सार्वजनिक शून्य (बंडल प्रतिक्रिया) { भविष्य<बंडल> भविष्य = mAuthManager.getProfile(व्यर्थ); बंडल परिणाम = Future.get();// पता लगाएं कि कॉल सफल हुई या नहीं, और प्रो पुनः प्राप्त करेंfile वस्तु भविष्य_प्रकार = परिणाम.प्राप्त(AuthzConstents.BUNDLE_KEY.FUTURE.val); यदि (future_type == AuthzConstents.FUTURE_TYPE.SUCCESS) { स्ट्रिंग नाम = परिणाम.getString(AuthzConstents.PROFILE_KEY.NAME.val); स्ट्रिंग ईमेल = परिणाम.getString(AuthzConstents.PROFILE_KEY.EMAIL.VAL); स्ट्रिंग खाता = परिणाम.getString(AuthzConstents.PROFILE_KEY.USER_ID.val); स्ट्रिंग ज़िपकोड = परिणाम.getString(AuthzConstents.PROFILE_KEY.POSTAL_CODE.val); runOnUiThread(नया Runnable() { @Override सार्वजनिक शून्य रन() { अपडेटप्रोfileडेटा(नाम, ईमेल, खाता, ज़िप कोड); } }); } अन्यथा यदि (future_type == AuthzConstents.FUTURE_TYPE.ERROR) { // त्रुटि ऑब्जेक्ट प्राप्त करें AuthError authError = AuthError.extractError(परिणाम); /* त्रुटि का निदान करने के लिए authError का उपयोग करें */ } |
एंड्रॉइड के लिए अमेज़ॅन गेटिंग स्टार्टिंग गाइड के साथ लॉगिन करें - डाउनलोड [अनुकूलित]
एंड्रॉइड के लिए अमेज़ॅन गेटिंग स्टार्टिंग गाइड के साथ लॉगिन करें - डाउनलोड करना