GDK গ্লাসওয়্যারের জন্য প্রমাণীকরণ

যদি আপনার GDK গ্লাসওয়্যারকে একটি ওয়েব পরিষেবার বিরুদ্ধে ব্যবহারকারীদের প্রমাণীকরণের প্রয়োজন হয়, GDK একটি API প্রদান করে যা ব্যবহারকারীকে তাদের শংসাপত্রগুলি প্রবেশ করতে দেয় যখন তারা আপনার গ্লাসওয়্যার ইনস্টল করে।

এই API ব্যবহার করে, আপনি Glass ব্যবহারকারীদের জন্য একটি সামঞ্জস্যপূর্ণ ব্যবহারকারীর অভিজ্ঞতা প্রদান করেন এবং আপনার নিজস্ব কাস্টম প্রমাণীকরণ স্কিমগুলি বাস্তবায়নের ওভারহেড এড়ান।

একটি Google API পরিষেবা অ্যাকাউন্ট তৈরি করা হচ্ছে

যখন প্রমাণীকরণ সঠিকভাবে সেট আপ করা হয়, আপনার ওয়েব অ্যাপের পিছনের প্রান্তটি মিরর API ব্যবহার করে ব্যবহারকারীদের অ্যাকাউন্টের তথ্য গ্লাসে পুশ করার জন্য তারা আপনার পরিষেবার সাথে প্রমাণীকরণের পরে।

এই API অ্যাক্সেস করার জন্য, একটি Google API প্রকল্প তৈরি করুন এবং তারপর একটি "পরিষেবা অ্যাকাউন্ট" (এবং একটি "ওয়েব অ্যাপ্লিকেশন" নয় ) এর জন্য একটি ক্লায়েন্ট আইডি তৈরি করুন। একটি পরিষেবা অ্যাকাউন্ট ব্যবহার করে, ব্যবহারকারীদের আলাদাভাবে তাদের শংসাপত্রগুলি গ্লাসে পুশ করার জন্য আপনার আবেদনের অনুমতি দিতে হবে না এবং OAuth অনুমতি পৃষ্ঠা এবং আপনার নিজস্ব প্রমাণীকরণ পৃষ্ঠা উভয়ই উপস্থাপন করা হবে না৷

এই অ্যাকাউন্ট তৈরি করতে:

  1. Google Developers Console- এ যান।
  2. প্রজেক্ট তৈরি করুন বোতামে ক্লিক করুন এবং অনুরোধ করা তথ্য লিখুন।
  3. একবার আপনার প্রজেক্ট তৈরি হয়ে গেলে, প্রোজেক্ট নম্বরের একটি নোট করুন, যা আপনার পরে প্রয়োজন হবে।
  4. APIs এবং auth এর অধীনে, API এ ক্লিক করুন এবং আপনার নতুন প্রকল্পের জন্য Google Mirror API সক্ষম করুন৷
  5. APIs এবং auth এর অধীনে, শংসাপত্রে ক্লিক করুন, তারপরে নতুন ক্লায়েন্ট আইডি তৈরি করুন ক্লিক করুন। প্রকল্পের জন্য একটি নতুন OAuth 2.0 ক্লায়েন্ট আইডি তৈরি করতে পরিষেবা অ্যাকাউন্ট লেবেলযুক্ত বাক্সটি চেক করুন৷
  6. একটি পপআপ উইন্ডো আপনাকে জানাবে যে ব্যক্তিগত কীটি আপনার কম্পিউটারে ডাউনলোড করা হচ্ছে এবং আপনাকে সেই ব্যক্তিগত কীটির জন্য পাসওয়ার্ড প্রদান করবে। একবার আপনি এই উইন্ডোটি বন্ধ করলে, আপনি এই ব্যক্তিগত কী ডাউনলোড করতে পারবেন না বা আবার পাসওয়ার্ড দেখতে পারবেন না। যদি তারা কখনও হারিয়ে যায়, তাহলে আপনাকে অবশ্যই একটি নতুন তৈরি করতে হবে।
  7. পরিষেবা অ্যাকাউন্টের ই-মেইল ঠিকানার একটি নোট করুন, যা আপনাকে পরবর্তীতে API কল করার জন্য প্রয়োজন হবে।

আপনার গ্লাসওয়্যার সম্পর্কে মেটাডেটা প্রদান করা হচ্ছে

আপনি যখন আপনার গ্লাসওয়্যার জমা দিতে প্রস্তুত, আপনাকে নিম্নলিখিত তথ্য প্রদান করতে হবে। এটি আমাদেরকে আপনার গ্লাসওয়্যারকে সঠিকভাবে প্রমাণীকরণ করার জন্য সেট আপ করার অনুমতি দেয় যখন আপনি এটি বাস্তবায়ন করেন।

  • আপনার প্রমাণীকরণ URL , ব্যবহারকারীরা যখন MyGlass-এ আপনার Glassware চালু করে তখন যেটিতে পুনঃনির্দেশিত হয়।
  • অ্যাকাউন্টের প্রকার (আপনি যখন গ্লাস ডিভাইসে অ্যান্ড্রয়েড AccountManager API কল করবেন তখন আপনি যে স্ট্রিংটি ব্যবহার করবেন)
  • আপনার AndroidManifest.xml থেকে আপনার অ্যাপ্লিকেশনের প্যাকেজের নাম
  • আপনি উপরে যে প্রকল্পটি তৈরি করেছেন তার সাংখ্যিক Google API প্রকল্প আইডি
  • MyGlass-এ আপলোড করার জন্য APK । পরীক্ষার জন্য, মাইগ্লাস থেকে আপনার গ্লাসওয়্যার চালু হলে প্রাথমিক ডাউনলোডটি পরিচালনা করতে আপনাকে শুধুমাত্র একবার এই APK প্রদান করতে হবে; এর পরে, আপনি আপনার ডিভাইসে APK ওভাররাইট করে স্থানীয়ভাবে পুনরাবৃত্তি এবং ডিবাগ করতে পারেন। মনে রাখবেন যে এই APK নিম্নলিখিত মানদণ্ড পূরণ করতে হবে:
    • এটি জিপ-সারিবদ্ধ হওয়া আবশ্যক।
    • এর পরে আপনাকে অবশ্যই প্যাকেজের নাম বা ব্যক্তিগত সাইনিং কীতে কোনও পরিবর্তন করতে হবে না (এই পরিবর্তনগুলির মধ্যে যেকোনটি হলে অ্যান্ড্রয়েড প্যাকেজ ম্যানেজার আপগ্রেডের অনুমতি দেয় না)৷
    • এটি অবশ্যই 50 মেগাবাইটের চেয়ে ছোট হতে হবে।
    • এটি অবশ্যই GDK এর সর্বশেষ সংস্করণ ব্যবহার করে কম্পাইল করা উচিত।

প্রমাণীকরণ প্রবাহ বাস্তবায়ন

নিম্নলিখিত চিত্রটি GDK গ্লাসওয়্যারের জন্য মৌলিক প্রমাণীকরণ প্রবাহ দেখায়:

প্রমাণীকরণ প্রবাহ বাস্তবায়ন করতে:

  1. ব্যবহারকারীরা যখন MyGlass-এ আপনার Glassware চালু করে, তখন তারা আপনার প্রমাণীকরণ URL-এ পুনঃনির্দেশিত হয়। এই অনুরোধগুলির মধ্যে userToken নামে একটি ক্যোয়ারী প্যারামিটার রয়েছে যা আপনাকে পরে ব্যবহার করতে হবে।

  2. ব্যবহারকারী আপনার প্রমাণীকরণ পৃষ্ঠায় তাদের শংসাপত্র প্রবেশ করান।

  3. আপনার সার্ভার ব্যবহারকারীর শংসাপত্র যাচাই করে। শংসাপত্রগুলি বৈধ হলে, mirror.accounts.insert পদ্ধতিতে একটি মিরর API কল করুন৷ আপনি যখন আপনার মিরর পরিষেবা অবজেক্ট তৈরি করবেন তখন এই পদ্ধতিটির জন্য আপনাকে https://www.googleapis.com/auth/glass.thirdpartyauth সুযোগ নির্দিষ্ট করতে হবে। কাঁচা HTTP বা Java ব্যবহার করে এই API কল করার উদাহরণগুলি অ্যাকাউন্ট তৈরির উদাহরণগুলিতে দেখানো হয়েছে৷

    আপনি নীচে যে প্যারামিটার এবং অনুরোধের অংশটি প্রদান করেন তা একই তথ্য উপস্থাপন করে যা আপনি Android এর AccountManager প্রদান করবেন যদি আপনি সরাসরি ডিভাইসে অ্যাকাউন্ট তৈরি করেন।

    সম্পত্তির নাম মান বর্ণনা
    features[] স্ট্রিং তালিকা বৈশিষ্ট্যগুলির একটি তালিকা (দেখুন AccountManager.hasFeatures )।
    password স্ট্রিং অ্যাকাউন্টের পাসওয়ার্ড (দেখুন AccountManager.getPassword )। আমরা সুপারিশ করি যে আপনি এই ক্ষেত্রে ব্যবহারকারীর প্রকৃত পাসওয়ার্ড সংরক্ষণ করবেন না , বরং এটিকে রিফ্রেশ টোকেনের মতো দীর্ঘস্থায়ী ব্যক্তিগত ডেটা সংরক্ষণ করতে ব্যবহার করুন৷
    userData[] বস্তুর তালিকা অ্যাকাউন্টের সাথে যুক্ত ব্যবহারকারীর ডেটার এক বা একাধিক জোড়া (দেখুন AccountManager.getUserData )।
    userData[].key স্ট্রিং একটি নির্দিষ্ট ব্যবহারকারীর ডেটা কী-মান জোড়ার সাথে যুক্ত কী।
    userData[].value স্ট্রিং একটি নির্দিষ্ট ব্যবহারকারীর ডেটা কী-মান জোড়ার সাথে সম্পর্কিত মান।
    authTokens[] বস্তুর তালিকা অ্যাকাউন্টের সাথে যুক্ত এক বা একাধিক প্রমাণীকরণ টোকেন (দেখুন AccountManager.getAuthToken )।
    authTokens[].type স্ট্রিং প্রমাণীকরণ টোকেনের ধরন।
    authTokens[].authToken স্ট্রিং প্রমাণীকরণ টোকেন।
  4. mirror.account.insert অনুরোধ পাওয়ার পর, Mirror API অ্যাকাউন্টটিকে ব্যবহারকারীর Glass ডিভাইস(গুলি) এ পুশ করে, যেখানে আপনি এখন AccountManager ক্লাস ব্যবহার করে এটি অ্যাক্সেস করতে পারেন।

ব্যবহারকারী-বান্ধব প্রমাণীকরণ প্রবাহ বাস্তবায়ন করতে এই নির্দেশিকা অনুসরণ করুন:

  • মোবাইল ডিভাইসের জন্য আপনার প্রবাহ অপ্টিমাইজ করুন.
  • যদি আপনার প্রবাহের একটি সুযোগ থাকে এবং ব্যবহারকারী সেগুলি বাতিল করে, একটি ভাল-পরিকল্পিত ত্রুটি বার্তা রাখুন।
  • নিশ্চিত করুন যে স্কোপগুলি আপনি অনুরোধ করছেন তা আসলে আপনার গ্লাসওয়্যারে ব্যবহার করা হচ্ছে।
  • যদি একটি ব্যবহারকারীর অ্যাকাউন্ট সংযুক্ত করা যেতে পারে, তাহলে নিশ্চিত করুন যে আপনি এটি সংযুক্ত করুন।
  • যেখানে সম্ভব, ব্যবহারকারীর ডেটা ক্লাউডে ব্যাক আপ করা উচিত।

গ্লাসওয়্যার প্রমাণীকরণে ধারাবাহিকতা বজায় রাখতে, নিম্নলিখিত প্রমাণীকরণ প্রবাহগুলির মধ্যে একটি ব্যবহার করুন:

মিরর বা হাইব্রিড একটি অ্যাকাউন্ট ছাড়া

  1. MyGlass এ টগল করার পরে, আপনার প্রমাণীকরণ URL একটি পপ-আপে খোলে।
  2. এটি সরাসরি ব্যবহারকারীকে গ্রহণ করার সুযোগে পাঠায়।
  3. ব্যবহারকারী স্কোপগুলি গ্রহণ বা বাতিল করার পরে, পপ-আপ বন্ধ করুন।

একটি অ্যাকাউন্ট দিয়ে আয়না

  1. MyGlass এ টগল করার পরে, আপনার প্রমাণীকরণ URL একটি পপ-আপে খোলে।
    • যদি ব্যবহারকারী ইতিমধ্যে আপনার পরিষেবাতে সাইন ইন করে থাকেন, তাহলে ব্যবহারকারীকে সরাসরি স্কোপে পাঠান।
    • যদি ব্যবহারকারী সাইন ইন না করে থাকে, সাইন-ইন ক্ষেত্রগুলি দেখান, তাদের আপনার পরিষেবাতে সাইন ইন করার অনুমতি দিন এবং তারপর স্কোপে পাঠান৷
    • ব্যবহারকারীর একটি অ্যাকাউন্ট না থাকলে, একটি অ্যাকাউন্ট তৈরি করার জন্য একটি লিঙ্ক প্রদান করুন। ইনস্টল ফ্লো প্রক্রিয়ার অংশ হিসাবে ব্যবহারকারীদের একটি অ্যাকাউন্ট তৈরি করার উপায় থাকতে হবে।
  2. ব্যবহারকারী সুযোগ গ্রহণ করে।
    • আপনার গ্লাসওয়্যারের কনফিগারযোগ্য সেটিংস থাকলে, ব্যবহারকারীকে যুক্তিসঙ্গত ডিফল্ট নির্বাচন সহ সেটিংস পৃষ্ঠায় পাঠান।
    • আপনার গ্লাসওয়্যারে কনফিগারযোগ্য সেটিংস না থাকলে, ব্যবহারকারীকে একটি নিশ্চিতকরণ পৃষ্ঠায় পাঠান। কোনো অতিরিক্ত কনফিগারেশনের প্রয়োজন না হলে পপ-আপ বন্ধ করুন।

একটি অ্যাকাউন্ট সহ হাইব্রিড

  1. MyGlass এ টগল করার পরে, আপনার প্রমাণীকরণ URL একটি পপ-আপে খোলে।
    • যদি ব্যবহারকারী ইতিমধ্যে আপনার পরিষেবাতে সাইন ইন করে থাকেন, তাহলে ব্যবহারকারীকে সরাসরি স্কোপে পাঠান।
    • ব্যবহারকারী সাইন ইন না করলে, সাইন ইন ক্ষেত্রগুলি দেখান, তাদের সাইন ইন করার অনুমতি দিন এবং তারপরে স্কোপে পাঠান৷
    • ব্যবহারকারীর একটি অ্যাকাউন্ট না থাকলে, একটি অ্যাকাউন্ট তৈরি করার জন্য একটি লিঙ্ক প্রদান করুন।
  2. ব্যবহারকারী সুযোগ গ্রহণ করে।
  3. GDK অ্যাকাউন্ট সন্নিবেশ করার জন্য মিরর API-কে একটি অনুরোধ পাঠান।
    • নির্বাচিত যুক্তিসঙ্গত ডিফল্ট সহ ব্যবহারকারীকে সেটিংস পৃষ্ঠায় পাঠান।
    • ব্যবহারকারীকে একটি নিশ্চিতকরণ পৃষ্ঠা পাঠান। কোনো অতিরিক্ত কনফিগারেশনের প্রয়োজন না হলে পপ-আপ বন্ধ করুন।

একটি অ্যাকাউন্ট এবং কাস্টম স্কোপ সহ মিরর বা হাইব্রিড

  1. MyGlass এ টগল করার পরে, আপনার প্রমাণীকরণ URL একটি পপ-আপে খোলে।
    • যদি ব্যবহারকারী ইতিমধ্যে আপনার পরিষেবাতে সাইন ইন করে থাকে, তাহলে ব্যবহারকারীকে আপনার অভ্যন্তরীণ স্কোপে পাঠান
    • ব্যবহারকারী সাইন ইন না করলে, সাইন ইন ক্ষেত্রগুলি দেখান, তাদের সাইন ইন করার অনুমতি দিন এবং তারপরে আপনার অভ্যন্তরীণ স্কোপে পাঠান
    • ব্যবহারকারীর একটি অ্যাকাউন্ট না থাকলে, একটি অ্যাকাউন্ট তৈরি করার জন্য একটি লিঙ্ক প্রদান করুন।
  2. ব্যবহারকারী আপনার কাস্টম স্কোপ গ্রহণ করলে, ব্যবহারকারীকে Google এর স্কোপে পাঠান।
  3. GDK অ্যাকাউন্ট সন্নিবেশ করার জন্য মিরর API-কে একটি অনুরোধ পাঠান।
    • নির্বাচিত যুক্তিসঙ্গত ডিফল্ট সহ ব্যবহারকারীকে সেটিংস পৃষ্ঠায় পাঠান।
    • ব্যবহারকারীকে একটি নিশ্চিতকরণ পৃষ্ঠা পাঠান। কোনো অতিরিক্ত কনফিগারেশনের প্রয়োজন না হলে পপ-আপ বন্ধ করুন।

একটি Android/iPhone অ্যাপ সহ মিরর বা হাইব্রিড

  1. MyGlass এ টগল করার পরে, আপনার প্রমাণীকরণ URL একটি পপ-আপে খোলে।
  2. এটি সরাসরি ব্যবহারকারীকে গ্রহণ করার সুযোগে পাঠায়।
  3. ব্যবহারকারী সুযোগ গ্রহণ করার পরে:
    • ব্যবহারকারীর সঙ্গী অ্যাপ থাকলে এবং প্রমাণীকৃত হলে, পপ-আপ উইন্ডো বন্ধ করুন।
    • যদি না হয়, ব্যবহারকারীকে একটি ইন্টারস্টিশিয়ালে পাঠান যা তাদের Google Play স্টোর বা iOS স্টোর থেকে অ্যাপটি ডাউনলোড করতে নির্দেশ করে
  4. অ্যাপটি ইন্সটল করার পর এবং প্রমাণীকরণের পর, পপ-আপ উইন্ডোটি বন্ধ করুন

GDK এবং কোন অ্যাকাউন্ট নেই

MyGlass-এ গ্লাসওয়্যার টগল করাই এই প্রবাহের জন্য প্রয়োজনীয়।

একটি অ্যাকাউন্ট সহ GDK

  1. MyGlass এ টগল করার পরে, আপনার প্রমাণীকরণ URL একটি পপ-আপে খোলে।
    • যদি ব্যবহারকারী ইতিমধ্যে আপনার পরিষেবাতে সাইন ইন করে থাকেন, তাহলে ব্যবহারকারীকে নিশ্চিতকরণ স্ক্রিনে পাঠান।
    • যদি ব্যবহারকারী সাইন ইন না করে থাকে, সাইন ইন ক্ষেত্রগুলি প্রদর্শন করুন, তাদের সাইন ইন করার অনুমতি দিন এবং তারপর নিশ্চিতকরণ স্ক্রিনে পাঠান৷
    • ব্যবহারকারীর একটি অ্যাকাউন্ট না থাকলে, একটি অ্যাকাউন্ট তৈরি করার জন্য একটি লিঙ্ক প্রদান করুন।
  2. ব্যবহারকারী সুযোগ গ্রহণ করে।
  3. GDK অ্যাকাউন্ট সন্নিবেশ করার জন্য মিরর API-কে একটি অনুরোধ পাঠান।
  4. নিশ্চিতকরণ স্ক্রীনটি দেখান এবং অল্প সময়ের জন্য এটি দেখানোর পরে স্ক্রীনটি বন্ধ করুন।

অ্যাকাউন্ট তৈরির উদাহরণ

সম্ভব হলে মিরর API-এর জন্য ক্লায়েন্ট লাইব্রেরি ব্যবহার করুন। এটি অ্যাকাউন্ট তৈরি করতে mirror.accounts.insert কল করা সহজ করে তোলে।

কাঁচা HTTP উদাহরণ

নীচের উদাহরণটি শুধুমাত্র অনুরোধের URL এবং JSON বডির একটি উদাহরণ যা এটি প্রত্যাশা করে। একটি পরিষেবা অ্যাকাউন্টের তরফে কাঁচা HTTP অনুরোধগুলি করা অনেক বেশি জটিল (সম্পূর্ণ বিবরণের জন্য সার্ভার থেকে সার্ভার অ্যাপ্লিকেশনগুলির জন্য OAuth 2.0 ব্যবহার করা দেখুন), তাই আমরা সুপারিশ করি যে আপনি যদি সম্ভব হয় তবে এটি সহজ করতে আমাদের Google API ক্লায়েন্ট লাইব্রেরিগুলির একটি ব্যবহার করুন৷

অনুরোধের পদ্ধতি এবং URL:

POST https://www.googleapis.com/mirror/v1/accounts/{userToken}/com.example.myapp/username%40email.com

অনুরোধ বডি:

{
    "features": ["a", "b", "c"],
    "userData": [
        { "key": "realName", "value": "Rusty Shackleford" },
        { "key": "foo", "value": "bar" }
    ],
    "authTokens": [
        { "type": "your_token_type", "authToken": "zT419Ma3X2pBr0L..." }
    ]
}

{userToken} অনুরোধ URL-এ টোকেন দিয়ে প্রতিস্থাপন করুন যা প্রমাণীকরণ প্রবাহ বাস্তবায়নের ধাপ 1-এ আপনার প্রমাণীকরণ URL-এ পাঠানো হয়েছিল।

জাভা উদাহরণ

mirror.accounts.insert কল করতে কিভাবে জাভা ক্লায়েন্ট লাইব্রেরি ব্যবহার করতে হয় এই উদাহরণটি দেখায়

import com.google.api.client.googleapis.auth.oauth2.GoogleCredential;
import com.google.api.client.http.HttpTransport;
import com.google.api.client.http.javanet.NetHttpTransport;
import com.google.api.client.json.JsonFactory;
import com.google.api.client.json.jackson.JacksonFactory;
import com.google.api.services.mirror.Mirror;
import com.google.api.services.mirror.model.Account;
import com.google.api.services.mirror.model.AuthToken;
import com.google.common.collect.Lists;
...

/** Email of the Service Account */
private static final String SERVICE_ACCOUNT_EMAIL =
    "<some-id>@developer.gserviceaccount.com";

/** Path to the Service Account's Private Key file */
private static final String SERVICE_ACCOUNT_PKCS12_FILE_PATH =
    "/path/to/<public_key_fingerprint>-privatekey.p12";

/** The account type, usually based on your company or app's package. */
private static final String ACCOUNT_TYPE = "com.example.myapp";

/** The Mirror API scopes needed to access the API. */
private static final String MIRROR_ACCOUNT_SCOPES =
    "https://www.googleapis.com/auth/glass.thirdpartyauth";

/**
 * Build and returns a Mirror service object authorized with the service accounts.
 *
 * @return Mirror service object that is ready to make requests.
 */
public static Mirror getMirrorService() throws GeneralSecurityException,
    IOException, URISyntaxException {
  HttpTransport httpTransport = new NetHttpTransport();
  JacksonFactory jsonFactory = new JacksonFactory();
  GoogleCredential credential = new GoogleCredential.Builder()
      .setTransport(httpTransport)
      .setJsonFactory(jsonFactory)
      .setServiceAccountId(SERVICE_ACCOUNT_EMAIL)
      .setServiceAccountScopes(MIRROR_ACCOUNT_SCOPES)
      .setServiceAccountPrivateKeyFromP12File(
          new java.io.File(SERVICE_ACCOUNT_PKCS12_FILE_PATH))
      .build();
  Mirror service = new Mirror.Builder(httpTransport, jsonFactory, null)
      .setHttpRequestInitializer(credential).build();
  return service;
}

/**
 * Creates an account and causes it to be synced up with the user's Glass.
 * This example only supports one auth token; modify it if you need to add
 * more than one, or to add features, user data, or the password field.
 *
 * @param mirror the service returned by getMirrorService()
 * @param userToken the user token sent to your auth callback URL
 * @param accountName the account name for this particular user
 * @param authTokenType the type of the auth token (chosen by you)
 * @param authToken the auth token
 */
public static void createAccount(Mirror mirror, String userToken, String accountName,
    String authTokenType, String authToken) {
  try {
    Account account = new Account();
    List<AuthToken> authTokens = Lists.newArrayList(
        new AuthToken().setType(authTokenType).setAuthToken(authToken));
    account.setAuthTokens(authTokens);
    mirror.accounts().insert(
        userToken, ACCOUNT_TYPE, accountName, account).execute();
  } catch (IOException e) {
    e.printStackTrace();
  }
}

গ্লাসে অ্যাকাউন্ট পুনরুদ্ধার করা হচ্ছে

গ্লাসে Account অবজেক্টগুলি পুনরুদ্ধার করা এবং ব্যবহার করা স্ট্যান্ডার্ড অ্যান্ড্রয়েড AccountManager ব্যবহার করার মতো।

  1. আপনার AndroidManifest.xml ফাইলে নিম্নলিখিত ম্যানিফেস্ট অনুমতিগুলি ঘোষণা করুন:

    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
    <uses-permission android:name="android.permission.USE_CREDENTIALS" />
    
  2. গ্লাসওয়্যারের অ্যাকাউন্টগুলি পুনরুদ্ধার করুন:

    AccountManager accountManager = AccountManager.get(mContext);
    // Use your Glassware's account type.
    Account[] accounts = accountManager.getAccountsByType("com.example");
    
    // Pick an account from the list of returned accounts.
    
  3. Account থেকে একটি প্রমাণীকরণ টোকেন পুনরুদ্ধার করুন:

    // Your auth token type.
    final String AUTH_TOKEN_TYPE = "oauth2:https://www.example.com/auth/login";
    
    accountManager.getAuthToken(account, AUTH_TOKEN_TYPE, null, activity, new AccountManagerCallback<Bundle>() {
        public void run(AccountManagerFuture<Bundle> future) {
            try {
                String token = future.getResult().getString(AccountManager.KEY_AUTHTOKEN);
                // Use the token.
            } catch (Exception e) {
                // Handle exception.
            }
        }
    }, null);