এই পৃষ্ঠায় বর্ণনা করা হয়েছে কীভাবে নির্দিষ্ট ডিভাইসের জন্য কাস্টম ডেটা সংরক্ষণ ও পুনরুদ্ধার করতে ডিভাইস রিকল ব্যবহার করতে হয়। ডিভাইসটি রিসেট করার পরেও, আপনার অ্যাপটি একই ডিভাইসে ইনস্টল করা থাকলে আপনি পরবর্তীতে নির্ভরযোগ্যভাবে কাস্টম ডেটা পুনরায় রিকল করতে পারবেন। এর মাধ্যমে আপনি ব্যবহারকারীর গোপনীয়তা বজায় রেখে, আপনার নির্দিষ্ট করা কোনো কাজ বা আচরণের উপর ভিত্তি করে কোনো ডিভাইসের পুনঃব্যবহার শনাক্ত ও প্রতিরোধ করতে পারেন।
ডিভাইস রিকল কীভাবে কাজ করে?
ডিভাইস রিকল অ্যাপগুলোকে ব্যবহারকারীর গোপনীয়তা রক্ষা করে একটি নির্দিষ্ট ডিভাইসের সাথে যুক্ত কাস্টম ডেটা সংরক্ষণ এবং পুনরুদ্ধার করার ক্ষমতা দেয়। এই ডেটা গুগলের সার্ভারে সংরক্ষিত থাকে, যা আপনার অ্যাপ পুনরায় ইনস্টল করা বা ডিভাইস রিসেট করার পরেও আপনার কাস্টম ডেটা নির্ভরযোগ্যভাবে পুনরুদ্ধার করতে সাহায্য করে। উদাহরণস্বরূপ, আপনি এই ফিচারটি ব্যবহার করে সেইসব ডিভাইস পুনরুদ্ধার করতে পারেন যেখানে গুরুতর অপব্যবহারের প্রমাণ পাওয়া গেছে, যে ডিভাইসগুলো থেকে ইতিমধ্যেই উচ্চ-মূল্যের আইটেম (যেমন একটি ফ্রি ট্রায়াল) রিডিম করা হয়েছে, অথবা যে ডিভাইসগুলো অপব্যবহারমূলক উদ্দেশ্যে বারবার নতুন অ্যাকাউন্ট তৈরি করতে ব্যবহৃত হচ্ছে। ডিভাইস রিকল ব্যবহারকারীর গোপনীয়তা রক্ষা করে, কারণ অনুরোধকারী অ্যাপটি কোনো ডিভাইস বা ব্যবহারকারী শনাক্তকারী অ্যাক্সেস না করেই শুধুমাত্র ডিভাইসগুলোর সাথে যুক্ত সীমিত ডেটা পুনরুদ্ধার করতে পারে। ডিভাইস রিকল চালু করার পরে, আপনি নিম্নলিখিত কাজগুলো করতে পারেন:
- ডিভাইস-ভিত্তিক ডেটা পড়ুন : একটি ইন্টিগ্রিটি ভারডিক্ট পাওয়ার সময় আপনি প্রতিটি ডিভাইসের জন্য তিনটি কাস্টম ভ্যালু বা বিট পড়তে পারেন। আপনি এই ভ্যালুগুলোর নিজস্ব অর্থ নির্ধারণ করতে পারেন; উদাহরণস্বরূপ, আপনি ভ্যালুগুলোকে তিনটি আলাদা ফ্ল্যাগ হিসেবে বিবেচনা করতে পারেন অথবা সেগুলোকে একত্রিত করে আটটি কাস্টম লেবেল তৈরি করতে পারেন।
- ডিভাইস-ভিত্তিক ডেটা পরিবর্তন করুন : একটি ইন্টিগ্রিটি টোকেন পাওয়ার পর, আপনি সেই টোকেনটি ব্যবহার করে গুগল প্লে-এর সার্ভারে একটি সার্ভার-সাইড কল করে এক বা একাধিক ভ্যালু পরিবর্তন করতে পারেন। টোকেনটি ব্যবহার করার জন্য আপনার কাছে ১৪ দিন পর্যন্ত সময় থাকবে। এটি আপনাকে একটি ভ্যালু পরিবর্তন করার সুযোগ দেয়, যদি উদাহরণস্বরূপ, আপনার প্রথম ইন্টিগ্রিটি চেক করার পরের দুই সপ্তাহের মধ্যে কোনো অপব্যবহার স্পষ্ট হয়ে ওঠে। আপনি যখন কোনো ভ্যালু পরিবর্তন করেন, তখন পরিবর্তনটি করার মাস এবং বছরও সংরক্ষিত হয়।
ডিভাইস প্রত্যাহারের পূর্বশর্ত এবং বিবেচ্য বিষয়সমূহ
ডিভাইস রিকল শুধুমাত্র অ্যাপের নিরাপত্তা রক্ষা করতে এবং অপব্যবহার, জালিয়াতি ও অননুমোদিত প্রবেশ রোধ করার জন্য তথ্য সংরক্ষণ ও পুনরুদ্ধার করতে ব্যবহার করা যেতে পারে। আপনি কোনো স্বতন্ত্র ব্যবহারকারী বা ডিভাইসের ফিঙ্গারপ্রিন্ট নিতে বা তাদের ট্র্যাক করতে ডিভাইস রিকল ব্যবহার করতে পারবেন না এবং লিঙ্গ, বয়স বা অবস্থানের তথ্যের মতো ব্যবহারকারী বা ডিভাইসের সংবেদনশীল বৈশিষ্ট্যগুলির হিসাব রাখতেও এটি ব্যবহার করতে পারবেন না।
ডিভাইস প্রত্যাহারের নিম্নলিখিত পূর্বশর্তগুলো রয়েছে:
- ডিভাইস রিকল ফোন, ট্যাবলেট, ফোল্ডেবল, টিভি, গাড়ি এবং Wear OS-এ ব্যবহার করা যায়। Wear-এর ক্ষেত্রে, ডিভাইস রিকল শুধুমাত্র সেইসব ডিভাইসে উপলব্ধ যেগুলিতে Wear OS 5 বা তার উচ্চতর সংস্করণ ইনস্টল করা থাকে। এমুলেটরগুলিতে ডিভাইস রিকল সমর্থিত নয়।
- ডিভাইসটি রিকল করার জন্য, ডিভাইসটিতে গুগল প্লে স্টোর এবং গুগল প্লে সার্ভিসেস উভয়েরই সাম্প্রতিক সংস্করণ ইনস্টল ও সক্রিয় করা আবশ্যক।
- ডিভাইস প্রত্যাহারের জন্য ব্যবহারকারী অ্যাকাউন্টটিতে প্লে লাইসেন্স থাকা আবশ্যক, অন্যথায় সিদ্ধান্তটি মূল্যায়ন করা হবে না।
ডিভাইস প্রত্যাহারের ক্ষেত্রে সময় সংক্রান্ত নিম্নলিখিত বিষয়গুলো বিবেচনা করতে হবে:
- একটি ইন্টিগ্রিটি টোকেন যাচাই করার পর, আপনি কাস্টম ডিভাইস রিকল ডেটা সংরক্ষণ করার জন্য এটি ব্যবহার করতে ১৪ দিন পর্যন্ত সময় পাবেন।
- ডিভাইস রিকলে টাইমস্ট্যাম্প অন্তর্ভুক্ত থাকে, যাতে আপনি অনেক আগে পরিবর্তিত ডেটার চেয়ে সম্প্রতি পরিবর্তিত ডেটাকে উচ্চতর অগ্রাধিকার দিতে পারেন। ডিভাইস হাতবদল হতে পারে বা মেরামত করে পুনরায় বিক্রি করা হতে পারে—এই বিষয়টি বিবেচনায় রেখে যথেষ্ট দীর্ঘ সময় পর ডেটা উপেক্ষা করা বা রিসেট করার কথা ভাবুন।
- কোনো ডিভাইসের রিকল বিটগুলো সর্বশেষ রিড বা রাইট অ্যাক্সেসের পর ৩ বছরের জন্য সংরক্ষিত থাকবে।
- যদি কোনো ডিভাইসের সাথে যুক্ত সমস্ত ডেটা মুছে ফেলার প্রয়োজন হয়, তাহলে আপনার অ্যাপ সেই ডিভাইসের তিনটি মানকেই 'ফলস' (false) এ রিসেট করতে পারে। এর ফলে টাইম স্ট্যাম্পগুলো স্বয়ংক্রিয়ভাবে রিসেট হয়ে যাবে।
একাধিক অ্যাপ ব্যবহারকারী ডেভেলপার এবং অ্যাপ স্থানান্তরকারী ডেভেলপারদের ক্ষেত্রে ডিভাইস রিকল নিম্নরূপভাবে কাজ করে:
- আপনার গুগল প্লে ডেভেলপার অ্যাকাউন্টের সমস্ত অ্যাপ প্রতিটি ডিভাইসের জন্য একই তিনটি ভ্যালু অ্যাক্সেস করতে পারে। অন্য কথায়, যদি আপনার কোনো একটি অ্যাপ এই ভ্যালুগুলোর মধ্যে একটি পরিবর্তন করে, তাহলে একই ডিভাইসে ইনস্টল করা থাকলে আপনার সব অ্যাপই সেই পরিবর্তিত ভ্যালুটি পড়তে পারবে।
- যদি কোনো অ্যাপ একটি ডেভেলপার অ্যাকাউন্ট থেকে অন্যটিতে স্থানান্তর করা হয়, তাহলে ডিভাইস রিকল পুরোনো ডেভেলপার অ্যাকাউন্টের ডিভাইস-ভিত্তিক ডেটার পরিবর্তে নতুন ডেভেলপার অ্যাকাউন্টের ডিভাইস-ভিত্তিক ডেটা প্রতিফলিত করবে।
ডিভাইস রিকল চালু করুন
আপনি প্রস্তুত হলে, প্লে কনসোলে ডিভাইস রিকল চালু করুন:
- প্লে কনসোলে সাইন ইন করুন।
- যে অ্যাপটি ডিভাইস রিকল ব্যবহার করবে, সেটি নির্বাচন করুন।
- বাম দিকের মেনু থেকে 'Protected with Play'- তে যান।
- Play Integrity API-এর পাশে, Manage-এ ক্লিক করুন।
- পৃষ্ঠার Responses অংশে, Change responses-এ ক্লিক করুন।
- ডিভাইস রিকল চালু করুন।
- পরিবর্তনগুলি সংরক্ষণ করুন-এ ক্লিক করুন।
যখন আপনি ডিভাইস রিকল চালু বা বন্ধ করবেন, তখন প্লে কনসোলে আপনার সেট আপ করা যেকোনো প্লে ইন্টিগ্রিটি এপিআই টেস্ট রেসপন্স মুছে যাবে এবং আপনাকে সেগুলি আবার তৈরি করতে হবে।
ডিভাইস রিকল মানগুলি পড়ুন
ডিভাইস রিকল প্লে ইন্টিগ্রিটি এপিআই ক্লাসিক এবং স্ট্যান্ডার্ড উভয় ধরনের রিকোয়েস্টেই কাজ করে। স্ট্যান্ডার্ড রিকোয়েস্টের ক্ষেত্রে, ওয়ার্মআপ কলে ডিভাইস রিকল রিফ্রেশ করা হয়। অন্য কথায়, প্রতি-ডিভাইস ডেটা পরিবর্তন করার পর, আপডেট করা মানটি দেখতে আপনাকে আরেকটি ওয়ার্মআপ করতে হবে। একবার ডিভাইস রিকল চালু করা হলে, আপনি আপনার ইন্টিগ্রিটি ভার্ডিক্টে ডিভাইস রিকলের মানগুলো পড়তে পারবেন।
ডিভাইস রিকল মান পরিবর্তন করুন
ইন্টিগ্রিটি ভার্ডিক্ট ডিকোড করার মতোই একটি সার্ভার-টু-সার্ভার এপিআই কল করে আপনি ডিভাইস রিকল ভ্যালু পরিবর্তন করতে পারেন। কোনো বিটকে ' true (true) সেট করলে তার রাইট ডেটও আপডেট হয়ে যাবে (এমনকি যদি সেটি আগে থেকেই true থাকে)। কোনো বিটকে 'ফলস' ( false সেট করলে তার রাইট ডেট রিসেট হয়ে খালি হয়ে যাবে। কোনো রিকোয়েস্টে যে বিটগুলো অনির্দিষ্ট থাকে, সেগুলো অপরিবর্তিত থাকবে। বিট লেখার পর ভার্ডিক্টে সেগুলো আবার রিড করতে পারার মধ্যে একটি সামান্য প্রোপাগেশন ডিলে থাকে। এই ডিলে ৩০ সেকেন্ড পর্যন্ত হতে পারে, যদিও এটি সাধারণত অনেক কম হয়। ডিভাইস রিকল রাইট রিকোয়েস্টগুলো আপনার ইন্টিগ্রিটি টোকেন রিকোয়েস্টের চেয়ে কম ঘন ঘন হওয়া উচিত। এগুলো আপনার ইন্টিগ্রিটি টোকেন রিকোয়েস্ট কোটার মধ্যে গণনা করা হয় না, তবে এগুলো নন-পাবলিক, ডিফেন্সিভ রেট লিমিটের অধীন।
playintegrity.googleapis.com/v1/PACKAGE_NAME/deviceRecall:write -d \
'{
"integrityToken": "INTEGRITY_TOKEN",
"newValues": {
"bitFirst": true,
"bitThird": false
}
}'newValues.BitFirst = true // ForceSendFields optional for value true newValues.BitSecond = false // ForceSendFields required for value false newValues.BitThird = nil // do not set ForceSendFields for unspecified bits newValues.ForceSendFields = []string{"BitSecond"}