শংসাপত্র পুনরুদ্ধার করুন

ক্রেডেনশিয়াল ম্যানেজারের পুনরুদ্ধার শংসাপত্র বৈশিষ্ট্য ব্যবহারকারীদের একটি নতুন ডিভাইস সেট আপ করার সময় তাদের অ্যাপ অ্যাকাউন্টগুলি পুনরুদ্ধার করতে দেয়। এই APIটি বিকাশকারী প্রিভিউতে রয়েছে এবং Android 9 বা উচ্চতর এবং Google Play পরিষেবাগুলি (GMS) কোর সংস্করণ 242200000 বা উচ্চতর সমস্ত ডিভাইসে উপলব্ধ৷ পুনরুদ্ধার শংসাপত্র বৈশিষ্ট্যের সুবিধার মধ্যে রয়েছে:

  • বিরামহীন ব্যবহারকারীর অভিজ্ঞতা : ব্যবহারকারীরা প্রতিটি পৃথক অ্যাপে ম্যানুয়ালি সাইন ইন করার প্রয়োজন ছাড়াই তাদের অ্যাপ অ্যাকাউন্ট পুনরুদ্ধার করতে পারে।
  • বর্ধিত ব্যবহারকারীর ব্যস্ততা : ব্যবহারকারীরা একটি নতুন ডিভাইস সেট আপ করার সময় তাদের অ্যাকাউন্ট পুনরুদ্ধার করতে পারলে আপনার অ্যাপ ব্যবহার করা চালিয়ে যাওয়ার সম্ভাবনা বেশি।
  • হ্রাসকৃত উন্নয়ন প্রচেষ্টা : শংসাপত্র পুনরুদ্ধার বৈশিষ্ট্যটি ক্রেডেনশিয়াল ম্যানেজারের সাথে একত্রিত করা হয়েছে, তাই বিকাশকারীরা যারা ইতিমধ্যেই পাসকি সমর্থন করে তারা শংসাপত্র পুনরুদ্ধারের ক্ষমতা যুক্ত করতে পারে৷

এটা কিভাবে কাজ করে

আপনি প্রাসঙ্গিক শংসাপত্রগুলি তৈরি করতে, পেতে এবং সাফ করতে পুনরুদ্ধার শংসাপত্র ব্যবহার করতে পারেন৷

  1. পুনরুদ্ধার শংসাপত্র তৈরি করুন : যখন ব্যবহারকারী আপনার অ্যাপে সাইন ইন করেন, তখন তাদের অ্যাকাউন্টের সাথে যুক্ত একটি পুনরুদ্ধার শংসাপত্র তৈরি করুন। এই শংসাপত্র স্থানীয়ভাবে সংরক্ষণ করা হয় এবং ক্লাউডে সিঙ্ক করা হয় যদি ব্যবহারকারী Google ব্যাকআপ সক্ষম করে থাকে এবং শেষ থেকে শেষ এনক্রিপশন উপলব্ধ থাকে (অ্যাপগুলি ক্লাউডে সিঙ্ক করা থেকে অপ্ট আউট করতে পারে)
  2. পুনরুদ্ধার শংসাপত্র পান : যখন ব্যবহারকারী একটি নতুন ডিভাইস সেট আপ করে, তখন আপনার অ্যাপ ক্রেডেনশিয়াল ম্যানেজার থেকে শংসাপত্র পুনরুদ্ধারের অনুরোধ করতে পারে। এটি আপনাকে কোনো অতিরিক্ত ইনপুট প্রয়োজন ছাড়াই স্বয়ংক্রিয়ভাবে ব্যবহারকারীকে সাইন ইন করতে দেয়৷
  3. পুনরুদ্ধার শংসাপত্র সাফ করুন : ব্যবহারকারী আপনার অ্যাপ থেকে সাইন আউট করলে, আপনার সংশ্লিষ্ট পুনরুদ্ধার শংসাপত্র মুছে ফেলা উচিত।

পুনরুদ্ধার শংসাপত্র বৈশিষ্ট্যটি ব্যাকএন্ড সিস্টেমগুলির সাথে মসৃণভাবে সংহত করতে পারে যা ইতিমধ্যে পাসকিগুলি প্রয়োগ করেছে। এই সামঞ্জস্যতা এই সত্য থেকে উদ্ভূত হয় যে উভয় পাসকি এবং পুনরুদ্ধার কী (রিস্টোর শংসাপত্র বৈশিষ্ট্য দ্বারা ব্যবহৃত শংসাপত্রের ধরন) একই অন্তর্নিহিত প্রযুক্তিগত বৈশিষ্ট্যগুলি মেনে চলে। এই সারিবদ্ধকরণ নিশ্চিত করে যে পুনরুদ্ধার শংসাপত্র প্রক্রিয়া কার্যকরভাবে পাসকি-সক্ষম সিস্টেমে সংরক্ষিত ব্যবহারকারীর শংসাপত্রগুলি পুনরুদ্ধার এবং পুনরুদ্ধার করতে পারে, বিভিন্ন প্ল্যাটফর্ম এবং প্রমাণীকরণ পদ্ধতিতে একটি সামঞ্জস্যপূর্ণ এবং ব্যবহারকারী-বান্ধব অভিজ্ঞতা প্রদান করে।

ক্রেডেনশিয়াল ম্যানেজার নীচের শীট
চিত্র 1. ডায়াগ্রাম যা শংসাপত্র তৈরি করা, একটি পুনরুদ্ধার প্রবাহ শুরু করা এবং স্বয়ংক্রিয় ব্যবহারকারী সাইন-ইন সহ একটি পুনরুদ্ধার শংসাপত্র ব্যবহার করে একটি নতুন ডিভাইসে একটি অ্যাপ ডেটা পুনরুদ্ধার করা চিত্রিত করে

বাস্তবায়ন

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

  1. আপনার প্রজেক্টে ক্রেডেনশিয়াল ম্যানেজার নির্ভরতা যোগ করুন।

    // build.gradle.kts
    implementation("androidx.credentials:credentials:1.5.0-alpha03")
    
  2. একটি CreateRestoreCredentialRequest অবজেক্ট তৈরি করুন।

  3. CredentialManager অবজেক্টে createCredential() পদ্ধতিতে কল করুন।

    val credentialManager = CredentialManager.create(context)
    
    // On a successful authentication create a Restore Key
    // Pass in the context and CreateRestoreCredentialRequest object
    val response = credentialManager.createCredential(context, createRestoreRequest)
    

    এই তৈরি করা পুনরুদ্ধার শংসাপত্র হল এক ধরনের পাসকি, এবং এটি একটি পুনরুদ্ধার পাসকি বা একটি পুনরুদ্ধার কী নামেও পরিচিত।

  4. যখন ব্যবহারকারী একটি নতুন ডিভাইস সেট আপ করে, তখন CredentialManager অবজেক্টে getCredential() পদ্ধতিতে কল করুন।

    // Fetch the Authentication JSON from server
    val authenticationJson = ...
    
    // Create the GetRestoreCredentialRequest object
    val options = GetRestoreCredentialOption(authenticationJson)
    val getRequest = GetCredentialRequest(Immutablelist.of(options))
    
    // The restore key can be fetched in two scenarios to
    // 1. On the first launch of app on the device, fetch the Restore Key
    // 2. In the onRestore callback (if the app implements the Backup Agent)
    val response = credentialManager.getCredential(context, getRequest)
    
  5. ব্যবহারকারী আপনার অ্যাপ থেকে সাইন আউট করলে, CredentialManager অবজেক্টে clearCredentialState() পদ্ধতিতে কল করুন।

    // Create a ClearCredentialStateRequest object
    val clearRequest = ClearCredentialStateRequest(TYPE_CLEAR_RESTORE_CREDENTIAL)
    
    // On user log-out, clear the restore key
    val response = credentialManager.clearCredentialState(clearRequest)
    

আপনি যদি ব্যাকআপ এজেন্ট ব্যবহার করেন, তাহলে onRestore কলব্যাকের মধ্যে getCredential অংশটি সম্পাদন করুন৷ এটি নিশ্চিত করে যে অ্যাপের তথ্য পুনরুদ্ধার করার সাথে সাথেই অ্যাপের শংসাপত্রগুলি পুনরুদ্ধার করা হয়।