এই ডকুমেন্ট আপনার ব্যবহারের কেসের উপর ভিত্তি করে আপনার অ্যাপের জন্য উপযুক্ত শনাক্তকারী বেছে নেওয়ার জন্য নির্দেশিকা প্রদান করে।
Android-এর অনুমতি সম্পর্কে সাধারণভাবে জানতে, অনুমতির ওভারভিউ দেখুন। Android অনুমতি নিয়ে কাজ করার জন্য নির্দিষ্ট পেশাদার পদ্ধতি সম্পর্কে জানতে, অ্যাপ অনুমতি সংক্রান্ত পেশাদার পদ্ধতি দেখুন।
Android শনাক্তকারী ব্যবহার করার পেশাদার পদ্ধতি
আপনার ব্যবহারকারীদের গোপনীয়তা সুরক্ষিত রাখতে, সবচেয়ে বেশি সীমাবদ্ধতা আরোপ করে এমন আইডেন্টিফায়ার ব্যবহার করুন যা আপনার অ্যাপের ব্যবহারের ক্ষেত্রে উপযুক্ত। বিশেষ করে, এইসব পেশাদার পদ্ধতি অনুসরণ করুন:
- সম্ভব হলে ব্যবহারকারী-রিসেট করতে পারবেন এমন শনাক্তকারী বেছে নিন। রিসেট করা যায় না এমন হার্ডওয়্যার আইডি ছাড়া অন্য শনাক্তকারী ব্যবহার করলেও, আপনার অ্যাপ বেশিরভাগ ক্ষেত্রে ব্যবহার করা যেতে পারে।
হার্ডওয়্যার শনাক্তকারী ব্যবহার করা এড়িয়ে চলুন। বেশিরভাগ ক্ষেত্রে, আপনি প্রয়োজনীয় কার্যকারিতা সীমিত না করেই ইন্টারন্যাশনাল মোবাইল ইকুইপমেন্ট আইডেন্টিটির (IMEI) মতো হার্ডওয়্যার শনাক্তকারী ব্যবহার করা এড়িয়ে যেতে পারবেন।
Android 10 (API লেভেল ২৯) রিসেট করা যায় না এমন শনাক্তকারীর উপর বিধিনিষেধ আরোপ করে, যার মধ্যে IMEI ও সিরিয়াল নম্বর, দুটিই পড়ে। এইসব শনাক্তকারী অ্যাক্সেস করতে আপনার অ্যাপকে অবশ্যই ডিভাইস বা প্রোফাইল মালিকের অ্যাপ হতে হবে, বিশেষ পরিষেবা প্রদানকারীর অনুমতি থাকতে হবে অথবা
READ_PRIVILEGED_PHONE_STATEবিশেষ অনুমতি থাকতে হবে।শুধুমাত্র ব্যবহারকারীর প্রোফাইলিং বা বিজ্ঞাপন ব্যবহারের ক্ষেত্রে বিজ্ঞাপন আইডি ব্যবহার করুন। বিজ্ঞাপন আইডি ব্যবহার করার সময়, সবসময় বিজ্ঞাপন ট্র্যাকিংয়ের ব্যাপারে ব্যবহারকারীর পছন্দকে সম্মান করুন। আপনাকে যদি ব্যক্তিগতভাবে শনাক্তকরণযোগ্য তথ্যের সাথে বিজ্ঞাপন শনাক্তকারী কানেক্ট করতে হয়, তাহলে ব্যবহারকারীর স্পষ্ট সম্মতি নিয়েই তা করুন।
বিজ্ঞাপন আইডি রিসেট করার সময় ব্রিজ করবেন না।
পেমেন্ট সংক্রান্ত প্রতারণা প্রতিরোধ ও টেলিফোনি ছাড়া অন্য সব ব্যবহারের ক্ষেত্রে, যখনই সম্ভব হবে, Firebase ইনস্টলেশন আইডি (FID) বা ব্যক্তিগতভাবে স্টোর করা GUID ব্যবহার করুন। বিজ্ঞাপন ছাড়া অন্য ব্যবহারের ক্ষেত্রে, FID বা GUID যথেষ্ট।
গোপনীয়তা সংক্রান্ত ঝুঁকি কমাতে আপনার ব্যবহারের ক্ষেত্রে উপযুক্ত API ব্যবহার করুন। হাই-ভ্যালু কন্টেন্ট সুরক্ষিত রাখতে DRM API এবং অপব্যবহার থেকে সুরক্ষিত রাখতে Play Integrity API ব্যবহার করুন। Play Integrity API হল গোপনীয়তা সংক্রান্ত ঝুঁকি না নিয়ে কোনও ডিভাইস আসল কিনা তা নির্ধারণ করার সবচেয়ে সহজ উপায়।
এই গাইডের বাকি অংশে Android অ্যাপ ডেভেলপ করার প্রসঙ্গে এই নিয়মগুলি বিস্তারিতভাবে আলোচনা করা হয়েছে।
বিজ্ঞাপন আইডি নিয়ে কাজ করা
বিজ্ঞাপন আইডি হল ব্যবহারকারী-রিসেটযোগ্য শনাক্তকারী এবং এটি বিজ্ঞাপনের ব্যবহারের ক্ষেত্রে উপযুক্ত। তবে, এই আইডি ব্যবহার করার সময় কিছু গুরুত্বপূর্ণ বিষয় মনে রাখতে হবে
বিজ্ঞাপন আইডি রিসেট করার ক্ষেত্রে ব্যবহারকারীর ইচ্ছাকে সবসময় সম্মান করুন। ব্যবহারকারীর সম্মতি ছাড়া, পরবর্তী বিজ্ঞাপন আইডি একসাথে লিঙ্ক করার জন্য অন্য শনাক্তকারী বা ফিঙ্গারপ্রিন্ট ব্যবহার করে ব্যবহারকারীর রিসেট করা আইডি ব্রিজ করবেন না। Google Play ডেভেলপার কন্টেন্ট নীতিতে নিম্নলিখিত বিষয়গুলি উল্লেখ করা আছে:
"...রিসেট করা হলে, ব্যবহারকারীর স্পষ্ট সম্মতি ছাড়া নতুন বিজ্ঞাপন শনাক্তকারীকে আগের বিজ্ঞাপন শনাক্তকারী বা আগের বিজ্ঞাপন শনাক্তকারী থেকে প্রাপ্ত ডেটার সাথে কানেক্ট করা যাবে না।"
সংশ্লিষ্ট পছন্দমতো বিজ্ঞাপন ফ্ল্যাগ সবসময় মেনে চলুন। বিজ্ঞাপন আইডি কনফিগার করা যায়,
যার ফলে ব্যবহারকারী আইডির সাথে যুক্ত ট্র্যাকিংয়ের পরিমাণ সীমিত করতে
পারেন। আপনি যাতে ব্যবহারকারীর ইচ্ছার বিরুদ্ধে না যান তা নিশ্চিত করতে সবসময় AdvertisingIdClient.Info.isLimitAdTrackingEnabled()
পদ্ধতি ব্যবহার করুন। Google
Play Developer কন্টেন্ট নীতিতে নিম্নলিখিত বিষয়গুলি উল্লেখ করা আছে:
"...আপনাকে ব্যবহারকারীর 'রুচি আধারিত বিজ্ঞাপন থেকে অপ্ট-আউট করা' অথবা 'পছন্দ অনুযায়ী বিজ্ঞাপন বেছে নেওয়া' সংক্রান্ত সেটিংস মেনে চলতে হবে। কোনও ব্যবহারকারী এই সেটিং চালু করে থাকলে, বিজ্ঞাপনের উদ্দেশ্যে ব্যবহারকারীর প্রোফাইল তৈরি করতে বা পছন্দমতো বিজ্ঞাপনের মাধ্যমে ব্যবহারকারীদের টার্গেট করতে আপনি বিজ্ঞাপন শনাক্তকারী ব্যবহার করতে পারবেন না। অনুমোদিত অ্যাক্টিভিটির মধ্যে প্রাসঙ্গিক বিজ্ঞাপন, ফ্রিকোয়েন্সি ক্যাপিং, কনভার্সন ট্র্যাকিং, রিপোর্টিং এবং নিরাপত্তা ও প্রতারণা শনাক্তকরণ অন্তর্ভুক্ত।"
আপনি যে SDK ব্যবহার করেন তার সাথে সম্পর্কিত কোনও গোপনীয়তা বা নিরাপত্তা নীতি সম্পর্কে সচেতন থাকুন
যা বিজ্ঞাপন আইডি ব্যবহারের সাথে সম্পর্কিত। যেমন, আপনি Google Analytics SDK থেকে
enableAdvertisingIdCollection() পদ্ধতিতে true পাস করলে, প্রযোজ্য সব Analytics SDK নীতি পর্যালোচনা করে
মেনে চলতে ভুলবেন না।
এছাড়াও, মনে রাখবেন যে Google Play ডেভেলপার কন্টেন্ট নীতি অনুযায়ী, বিজ্ঞাপন আইডি "ব্যক্তিগতভাবে শনাক্তকরণযোগ্য তথ্যের সাথে কানেক্ট করা যাবে না অথবা কোনও পার্সিস্টেন্ট ডিভাইস শনাক্তকারীর (যেমন: SSAID, MAC অ্যাড্রেস, IMEI ইত্যাদি) সাথে যুক্ত করা যাবে না।"
উদাহরণস্বরূপ, ধরুন আপনি নিম্নলিখিত কলাম সহ ডেটাবেস টেবিল পূরণ করার জন্য তথ্য সংগ্রহ করতে চান:
| TABLE-01 | |||
timestamp |
ad_id |
account_id |
clickid |
| TABLE-02 | |||
account_id |
name |
dob |
country |
এই উদাহরণে, দুটি টেবিলের account_id কলাম ব্যবহার করে ad_id কলামকে PII-এর সাথে যুক্ত করা যেতে পারে, যা Google
Play ডেভেলপার কন্টেন্ট নীতি লঙ্ঘন করবে, যদি আপনি ব্যবহারকারীদের থেকে স্পষ্ট অনুমতি না পান।
মনে রাখবেন, বিজ্ঞাপনদাতার আইডি এবং PII-এর মধ্যে লিঙ্ক সবসময় এত স্পষ্ট হয় না। PII এবং বিজ্ঞাপন আইডি কী-যুক্ত টেবিল, দুটিতেই "কোয়াসি-আইডেন্টিফায়ার" থাকতে পারে, যার কারণেও সমস্যা হতে পারে। যেমন, ধরুন আমরা TABLE-01 এবং TABLE-02 এইভাবে পরিবর্তন করেছি:
| TABLE-01 | ||||
timestamp |
ad_id |
clickid |
dev_model |
|
| TABLE-02 | ||||
timestamp |
demo |
account_id |
dev_model |
name |
এই ক্ষেত্রে, ক্লিক ইভেন্ট যথেষ্ট বিরল হলে, ইভেন্টের টাইমস্ট্যাম্প এবং ডিভাইস মডেল ব্যবহার করে বিজ্ঞাপনদাতা আইডি TABLE-01 এবং TABLE-02-এ থাকা PII-এর মধ্যে যোগাযোগ করা এখনও সম্ভব।
যদিও, কোনও ডেটাসেটে এই ধরনের কোয়াসি-আইডেন্টিফায়ার নেই তা নিশ্চিত করা প্রায়শই কঠিন, তবে আপনি যেখানে সম্ভব সেখানে অনন্য ডেটা সাধারণীকরণ করে সবচেয়ে স্পষ্ট জয়েন ঝুঁকি প্রতিরোধ করতে পারেন। আগের উদাহরণে, এর অর্থ হল টাইমস্ট্যাম্পের নির্ভুলতা কমানো যাতে একই মডেলের একাধিক ডিভাইস প্রতিটি টাইমস্ট্যাম্পের জন্য দেখা যায়।
অন্যান্য সমাধানের মধ্যে নিম্নলিখিতগুলি অন্তর্ভুক্ত:
এমন টেবিল ডিজাইন করা যাবে না যা স্পষ্টভাবে PII-কে বিজ্ঞাপন আইডির সাথে লিঙ্ক করে। আগের উদাহরণগুলির প্রথমটিতে, এর অর্থ হবে TABLE-01-এ
account_idকলাম অন্তর্ভুক্ত না করা।বিজ্ঞাপন আইডি কীড ডেটা এবং PII, এই দুটিতেই অ্যাক্সেস আছে এমন ব্যবহারকারী বা ভূমিকার জন্য অ্যাক্সেস কন্ট্রোল তালিকা আলাদা করা এবং মনিটর করা। দুটি সোর্স একসাথে অ্যাক্সেস করার ক্ষমতা কঠোরভাবে নিয়ন্ত্রণ ও অডিট করার মাধ্যমে (যেমন, টেবিলগুলির মধ্যে একটি জয়েন পারফর্ম করার মাধ্যমে), আপনি বিজ্ঞাপন আইডি ও PII-এর মধ্যে অ্যাসোসিয়েশনের ঝুঁকি কমাতে পারবেন। সাধারণত, অ্যাক্সেস নিয়ন্ত্রণ করার অর্থ হল নিম্নলিখিত কাজগুলি করা:
- বিজ্ঞাপনদাতার আইডি কী করা ডেটা এবং PII-এর জন্য অ্যাক্সেস কন্ট্রোল লিস্ট (ACL) আলাদা রাখুন যাতে উভয় ACL-এ থাকা ব্যক্তি বা ভূমিকার সংখ্যা কমানো যায়।
- এই নিয়মের ব্যতিক্রম শনাক্ত ও ম্যানেজ করতে অ্যাক্সেস লগিং ও অডিটিং প্রয়োগ করুন।
বিজ্ঞাপন আইডি দায়িত্ব সহকারে ব্যবহার করার ব্যাপারে আরও জানতে,
AdvertisingIdClient API রেফারেন্স দেখুন।
FID ও GUID নিয়ে কাজ করা
কোনও ডিভাইসে চলা অ্যাপ ইনস্ট্যান্স শনাক্ত করার সবচেয়ে সহজ উপায় হল Firebase ইনস্টলেশন আইডি (FID) ব্যবহার করা এবং বিজ্ঞাপন ছাড়া বেশিরভাগ ব্যবহারের ক্ষেত্রে এটিই হল সাজেস্ট করা সমাধান। শুধুমাত্র যে অ্যাপ ইনস্ট্যান্সের জন্য এটি প্রোভিশন করা হয়েছে সেটিই এই আইডেন্টিফায়ার অ্যাক্সেস করতে পারে এবং এটি ব্যবহারকারী রিসেট করতে পারেন কারণ অ্যাপটি ইনস্টল করা থাকাকালীনই এটি থাকে।
এর ফলে, রিসেট করা যায় না এমন ডিভাইস-স্কোপড হার্ডওয়্যার আইডির তুলনায় FID আরও ভালো গোপনীয়তা প্রদান করে। আরও তথ্যের জন্য,
firebase.installations API রেফারেন্স দেখুন।
FID ব্যবহার করা সম্ভব না হলে, আপনি অ্যাপ ইনস্ট্যান্স অনন্যভাবে শনাক্ত করতে কাস্টম গ্লোবালি-ইউনিক আইডি (GUID) ব্যবহার করতে পারেন। এটি করার সবচেয়ে সহজ উপায় হল নিম্নলিখিত কোড ব্যবহার করে আপনার নিজস্ব GUID তৈরি করা:
Kotlin
var uniqueID = UUID.randomUUID().toString()
জাভা
String uniqueID = UUID.randomUUID().toString();
শনাক্তকারীটি বিশ্বব্যাপী অনন্য হওয়ার কারণে, এটি কোনও নির্দিষ্ট অ্যাপ ইনস্ট্যান্স শনাক্ত করতে ব্যবহার করা যেতে পারে। বিভিন্ন অ্যাপ জুড়ে শনাক্তকারী লিঙ্ক করার সাথে সম্পর্কিত সমস্যা এড়াতে, এক্সটার্নাল (শেয়ার করা) স্টোরেজের পরিবর্তে ইন্টার্নাল স্টোরেজে GUID সেভ করুন। আরও তথ্যের জন্য, ডেটা ও ফাইল স্টোরেজ ওভারভিউ পৃষ্ঠা দেখুন।
MAC অ্যাড্রেসের সাথে কাজ করে না
MAC অ্যাড্রেস বিশ্বব্যাপী অনন্য, ব্যবহারকারী রিসেট করতে পারেন না এবং ফ্যাক্টরি রিসেট করলেও এটি থেকে যায়। এইসব কারণে, ব্যবহারকারীর গোপনীয়তা সুরক্ষিত রাখতে, Android ভার্সন 6 এবং তার পরবর্তী ভার্সনে, MAC অ্যাড্রেসে অ্যাক্সেস সিস্টেম অ্যাপে সীমাবদ্ধ করা হয়েছে। থার্ড-পার্টি অ্যাপ এগুলি অ্যাক্সেস করতে পারে না।
Android 11-এ MAC অ্যাড্রেসের উপলভ্যতায় পরিবর্তন
Android 11 ও তার পরবর্তী যেকোনও ভার্সন টার্গেট করা অ্যাপে, Passpoint নেটওয়ার্কের জন্য MAC র্যান্ডমাইজেশন হল প্রতিটি Passpoint প্রোফাইল অনুযায়ী, যা নিম্নলিখিত ফিল্ডের উপর ভিত্তি করে একটি অনন্য MAC অ্যাড্রেস তৈরি করে:
- সম্পূর্ণভাবে উপযুক্ত ডোমেনের নাম (FQDN)
- রাজ্য
- ক্রেডেনশিয়াল, পাসপয়েন্ট প্রোফাইলে ব্যবহৃত ক্রেডেনশিয়ালের উপর ভিত্তি করে:
- ব্যবহারকারীর ক্রেডেনশিয়াল: ইউজারনেম
- সার্টিফিকেট ক্রেডেনশিয়াল: সার্টিফিকেট ও সার্টিফিকেটের ধরন
- সিম কার্ড ক্রেডেনশিয়াল: EAP-এর ধরন ও IMSI
এছাড়াও, বিশেষ অধিকারপ্রাপ্ত নয় এমন অ্যাপ ডিভাইসের MAC অ্যাড্রেস অ্যাক্সেস করতে পারে না; শুধুমাত্র
IP অ্যাড্রেস সহ নেটওয়ার্ক ইন্টারফেস দেখা যায়। এটি
getifaddrs() এবং NetworkInterface.getHardwareAddress() পদ্ধতি,
সেইসাথে RTM_GETLINK Netlink মেসেজ পাঠানোর উপর প্রভাব ফেলে।
এই পরিবর্তনের ফলে অ্যাপগুলি যেভাবে প্রভাবিত হয় তার একটি তালিকা নিচে দেওয়া হল:
NetworkInterface.getHardwareAddress()প্রতিটি ইন্টারফেসের জন্য নাল রিটার্ন করে।- অ্যাপ
NETLINK_ROUTEসকেটেbind()ফাংশন ব্যবহার করতে পারবে না। ipকমান্ড ইন্টারফেস সম্পর্কে তথ্য প্রদান করে না।- অ্যাপ
RTM_GETLINKমেসেজ পাঠাতে পারবে না।
মনে রাখবেন, বেশিরভাগ ডেভেলপারদের
NetworkInterface, getifaddrs() বা Netlink সকেটের মতো লোয়ার-লেভেল API-এর পরিবর্তে
ConnectivityManager-এর হায়ার-লেভেল API ব্যবহার করা উচিত। যেমন,
বর্তমান রুট সম্পর্কে আপ-টু-ডেট তথ্য প্রয়োজন এমন কোনও অ্যাপ
ConnectivityManager.registerNetworkCallback() ব্যবহার করে নেটওয়ার্ক পরিবর্তন সম্পর্কে শুনে এবং নেটওয়ার্কের
সংশ্লিষ্ট LinkProperties.getRoutes()-এ কল করে এই তথ্য
পেতে পারে।
শনাক্তকারীর বৈশিষ্ট্য
Android OS বিভিন্ন আচরণগত বৈশিষ্ট্য সহ একাধিক আইডি অফার করে। আপনি কোন আইডি ব্যবহার করবেন তা নির্ভর করে নিম্নলিখিত বৈশিষ্ট্যগুলি আপনার ব্যবহারের ক্ষেত্রে কীভাবে কাজ করে তার উপর। তবে, এইসব বৈশিষ্ট্যের সাথে গোপনীয়তা সংক্রান্ত প্রভাবও যুক্ত থাকে, তাই এইসব বৈশিষ্ট্য একে অপরের সাথে কীভাবে ইন্টার্যাক্ট করে তা বোঝা গুরুত্বপূর্ণ।
সুযোগ
কোন কোন সিস্টেম শনাক্তকারী অ্যাক্সেস করতে পারবে তা শনাক্তকারীর স্কোপ থেকে জানা যায়। Android আইডেন্টিফায়ার স্কোপ সাধারণত তিন ধরনের হয়:
- সিঙ্গেল অ্যাপ: আইডিটি অ্যাপের ইন্টার্নাল এবং অন্যান্য অ্যাপের ক্ষেত্রে অ্যাক্সেসযোগ্য নয়।
- অ্যাপের গ্রুপ: আইডিটি সম্পর্কিত অ্যাপের পূর্বনির্ধারিত গ্রুপে অ্যাক্সেসযোগ্য।
- ডিভাইস: ডিভাইসে ইনস্টল করা সব অ্যাপ আইডি অ্যাক্সেস করতে পারে।
কোনও শনাক্তকারীকে যত বেশি স্কোপ দেওয়া হয়, ট্র্যাকিংয়ের উদ্দেশ্যে সেটি ব্যবহার করার ঝুঁকি তত বেশি হয়। অন্যদিকে, কোনও শনাক্তকারী যদি শুধুমাত্র একটি অ্যাপ ইনস্ট্যান্সের মাধ্যমে অ্যাক্সেস করা যায়, তাহলে বিভিন্ন অ্যাপে ট্রানজ্যাকশন জুড়ে কোনও ডিভাইস ট্র্যাক করার জন্য এটি ব্যবহার করা যাবে না।
রিসেট করার উপযোগিতা ও পারসিস্টেন্স
রিসেট করার উপযোগিতা এবং স্থায়িত্ব শনাক্তকারীর লাইফস্প্যান নির্ধারণ করে এবং এটি কীভাবে রিসেট করা যায় তা ব্যাখ্যা করে। সাধারণ রিসেট ট্রিগারের মধ্যে রয়েছে: অ্যাপ-মধ্যস্থ রিসেট, সিস্টেম সেটিংসের মাধ্যমে রিসেট, লঞ্চ করার সময় রিসেট এবং ইনস্টল করার সময় রিসেট। Android আইডেন্টিফায়ারের লাইফস্প্যান আলাদা আলাদা হতে পারে, তবে লাইফস্প্যান সাধারণত আইডি কীভাবে রিসেট করা হয় তার সাথে সম্পর্কিত:
- শুধুমাত্র সেশন: ব্যবহারকারী যতবার অ্যাপ রিস্টার্ট করেন ততবার একটি নতুন আইডি ব্যবহার করা হয়।
- ইনস্টল-রিসেট: ব্যবহারকারী যতবার অ্যাপ আনইনস্টল ও আবার ইনস্টল করেন, ততবারই নতুন আইডি ব্যবহার করা হয়।
- FDR-রিসেট: ব্যবহারকারী যতবার ডিভাইস ফ্যাক্টরি-রিসেট করেন ততবার একটি নতুন আইডি ব্যবহার করা হয়।
- FDR-পারসিস্টেন্ট: ফ্যাক্টরি রিসেট করার পরেও আইডি থেকে যায়।
রিসেট করার সুবিধা ব্যবহারকারীদের এমন একটি নতুন আইডি তৈরি করার ক্ষমতা দেয় যা আগে থেকে থাকা কোনও প্রোফাইল তথ্যের সাথে সম্পর্কিত নয়। কোনও শনাক্তকারী যত বেশি সময় ধরে এবং যত নির্ভরযোগ্যভাবে থাকে, যেমন ফ্যাক্টরি রিসেট করার পরেও থেকে যায়, ব্যবহারকারীকে দীর্ঘ সময় ধরে ট্র্যাক করার ঝুঁকি তত বেশি থাকে। অ্যাপ আবার ইনস্টল করার সময় আইডেন্টিফায়ার রিসেট করা হলে, এটি পারসিস্টেন্স কমায় এবং আইডি রিসেট করার উপায় প্রদান করে, এমনকি অ্যাপ বা সিস্টেম সেটিংস থেকে এটি রিসেট করার জন্য ব্যবহারকারীর কাছে কোনও স্পষ্ট কন্ট্রোল না থাকলেও।
অনন্যতা
অনন্যতা সংঘর্ষের সম্ভাবনা প্রতিষ্ঠা করে; অর্থাৎ, একই
শনাক্তকারী সংশ্লিষ্ট স্কোপের মধ্যে বিদ্যমান। সর্বোচ্চ লেভেলে, বিশ্বব্যাপী
অনন্য শনাক্তকারীর ক্ষেত্রে কখনও কোনও সংঘর্ষ হয় না, এমনকি অন্য ডিভাইস বা অ্যাপের ক্ষেত্রেও।
অন্যথায়, অনন্যতার লেভেল নির্ভর করে শনাক্তকারীর এনট্রপি এবং
এটি তৈরি করার জন্য ব্যবহৃত র্যান্ডমনেসের সোর্সের উপর। যেমন, ইনস্টলেশনের ক্যালেন্ডার তারিখ (যেমন 2019-03-01) দিয়ে সিড করা র্যান্ডম শনাক্তকারীর ক্ষেত্রে
সংঘর্ষের সম্ভাবনা, ইনস্টলেশনের ইউনিক্স টাইমস্ট্যাম্প (যেমন 1551414181) দিয়ে সিড করা শনাক্তকারীর চেয়ে
অনেক বেশি।
সাধারণত, ব্যবহারকারীর অ্যাকাউন্ট শনাক্তকারীকে অনন্য হিসেবে বিবেচনা করা যেতে পারে। অর্থাৎ, প্রতিটি ডিভাইস-অ্যাকাউন্ট কম্বিনেশনের একটি অনন্য আইডি আছে। অন্যদিকে, কোনও জনসংখ্যার মধ্যে শনাক্তকারী যত কম অনন্য হবে, গোপনীয়তা সুরক্ষা তত বেশি হবে কারণ এটি কোনও স্বতন্ত্র ব্যবহারকারীকে ট্র্যাক করার জন্য কম উপযোগী।
ইন্টিগ্রিটি প্রোটেকশন ও নন-রিপুডিয়েবিলিটি
আপনি এমন একটি শনাক্তকারী ব্যবহার করতে পারেন যা স্পুফ বা রিপ্লে করা কঠিন, যাতে প্রমাণ করা যায় যে সংশ্লিষ্ট ডিভাইস বা অ্যাকাউন্টের নির্দিষ্ট কিছু বৈশিষ্ট্য আছে। যেমন, আপনি প্রমাণ করতে পারেন যে ডিভাইসটি কোনও স্প্যামারের ব্যবহার করা ভার্চুয়াল ডিভাইস নয়। সহজে নকল করা যায় না এমন শনাক্তকারী অস্বীকার না করার সুবিধাও প্রদান করে। ডিভাইসটি যদি একটি গোপন'কী' দিয়ে মেসেজ সাইন করে, তাহলে অন্য কারও ডিভাইস মেসেজটি পাঠিয়েছে বলে দাবি করা কঠিন। নন-রিপুডিয়েবিলিটি এমন কিছু হতে পারে যা ব্যবহারকারী চান, যেমন পেমেন্ট যাচাই করার সময়, অথবা এটি এমন একটি অবাঞ্ছিত প্রপার্টি হতে পারে, যেমন এমন কোনও মেসেজ পাঠানো যার জন্য তিনি অনুতপ্ত।
সাধারণ ব্যবহারের উদাহরণ এবং ব্যবহার করার জন্য উপযুক্ত শনাক্তকারী
এই বিভাগে IMEI-এর মতো হার্ডওয়্যার আইডি ব্যবহারের বিকল্প সম্পর্কে তথ্য দেওয়া হয়েছে। হার্ডওয়্যার আইডি ব্যবহার করা উচিত নয় কারণ ব্যবহারকারী সেগুলি রিসেট করতে পারেন না এবং সেগুলি ডিভাইসের মধ্যেই সীমাবদ্ধ থাকে। অনেক ক্ষেত্রে, অ্যাপ-স্কোপড শনাক্তকারীই যথেষ্ট।
অ্যাকাউন্ট
পরিষেবা প্রদানকারীর স্ট্যাটাস
এই ক্ষেত্রে, আপনার অ্যাপটি পরিষেবা প্রদানকারীর অ্যাকাউন্ট ব্যবহার করে ডিভাইসের ফোন এবং টেক্সট করার ফাংশনের সাথে ইন্টার্যাক্ট করে।
ব্যবহার করার জন্য সাজেস্ট করা শনাক্তকারী: IMEI, IMSI এবং Line1
এই সাজেশন কেন?
পরিষেবা প্রদানকারী-সম্পর্কিত কার্যকারিতার জন্য প্রয়োজন হলে হার্ডওয়্যার শনাক্তকারী ব্যবহার করা গ্রহণযোগ্য। যেমন, আপনি এই শনাক্তকারী ব্যবহার করে সেলুলার পরিষেবা প্রদানকারী বা সিম স্লট পরিবর্তন করতে পারেন অথবা IP (Line1-এর জন্য) - সিম-ভিত্তিক ব্যবহারকারীর অ্যাকাউন্টের মাধ্যমে এসএমএস মেসেজ পাঠাতে পারেন। তবে, বিশেষ অধিকার নেই এমন অ্যাপের ক্ষেত্রে, আমরা সার্ভার-সাইডে ব্যবহারকারীর ডিভাইসের তথ্য ফিরিয়ে আনতে অ্যাকাউন্ট সাইন-ইন ব্যবহার করার সুপারিশ করি। এর একটি কারণ হল, Android 6.0 (API লেভেল 23) এবং তার পরবর্তী যেকোনও ভার্সনে, এইসব শনাক্তকারী শুধুমাত্র রানটাইম অনুমতির সাথে ব্যবহার করা যেতে পারে। ব্যবহারকারী এই অনুমতি টগল করে বন্ধ করে দিতে পারেন, তাই আপনার অ্যাপকে এই ব্যতিক্রমগুলি সুন্দরভাবে ম্যানেজ করতে হবে।
মোবাইল সাবস্ক্রিপশন স্ট্যাটাস
এই ক্ষেত্রে, আপনাকে ডিভাইসে নির্দিষ্ট মোবাইল পরিষেবা সাবস্ক্রিপশনের সাথে অ্যাপের কার্যকারিতা অ্যাসোসিয়েট করতে হবে। যেমন, সিমের সাথে লিঙ্ক করা ডিভাইসের মোবাইল সাবস্ক্রিপশনের উপর ভিত্তি করে কিছু প্রিমিয়াম অ্যাপ ফিচারের অ্যাক্সেস যাচাই করার প্রয়োজন হতে পারে।
ব্যবহার করার জন্য সাজেস্ট করা শনাক্তকারী: ডিভাইসে ব্যবহার করা সিম শনাক্ত করতে Subscription ID API।
সাবস্ক্রিপশন আইডি ডিভাইসে ব্যবহৃত ইনস্টল করা সিম (ফিজিক্যাল ও ইলেকট্রনিক সহ) অনন্যভাবে শনাক্ত করার জন্য একটি ইন্ডেক্স ভ্যালু (১ থেকে শুরু) প্রদান করে। এই আইডির মাধ্যমে, আপনার অ্যাপ নির্দিষ্ট সিমের জন্য বিভিন্ন সাবস্ক্রিপশন তথ্যের সাথে এর কার্যকারিতা যুক্ত করতে পারে। ডিভাইস ফ্যাক্টরি রিসেট না করা পর্যন্ত প্রদত্ত সিমের জন্য এই ভ্যালু স্থির থাকে। তবে, এমন কিছু ঘটনা ঘটতে পারে যেখানে একই সিমের বিভিন্ন ডিভাইসে আলাদা সাবস্ক্রিপশন আইডি থাকে বা বিভিন্ন সিমের বিভিন্ন ডিভাইসে একই আইডি থাকে।
এই সাজেশন কেন?
কিছু অ্যাপ বর্তমানে এই উদ্দেশ্যে ICC ID ব্যবহার করতে পারে। ICC ID বিশ্বব্যাপী অনন্য এবং রিসেট করা যায় না বলে, Android 10 থেকে READ_PRIVILEGED_PHONE_STATE অনুমতি সহ অ্যাপে অ্যাক্সেস সীমিত করা হয়েছে।
Android 11 থেকে শুরু করে, Android, অ্যাপের টার্গেট API লেভেল যাই হোক না কেন, getIccId() API-এর মাধ্যমে ICCID-তে অ্যাক্সেস আরও সীমাবদ্ধ করেছে।
প্রভাবিত অ্যাপগুলিকে এর পরিবর্তে সাবস্ক্রিপশন আইডি ব্যবহার করার জন্য মাইগ্রেট করতে হবে।
একক সাইন-অন
এই ক্ষেত্রে, আপনার অ্যাপ সিঙ্গল সাইন-অন অভিজ্ঞতা প্রদান করে, যা ব্যবহারকারীদের আপনার প্রতিষ্ঠানের সাথে আগে থেকে থাকা অ্যাকাউন্ট যুক্ত করার অনুমতি দেয়।
ব্যবহার করার জন্য সাজেস্ট করা শনাক্তকারী: অ্যাকাউন্ট ম্যানেজারের সাথে মানানসই অ্যাকাউন্ট, যেমন Google অ্যাকাউন্ট লিঙ্ক করা
এই সাজেশন কেন?
Google অ্যাকাউন্ট লিঙ্ক করার সুবিধা ব্যবহারকারীদের তাদের আগে থেকে থাকা Google অ্যাকাউন্ট আপনার অ্যাপের সাথে যুক্ত করার অনুমতি দেয়, যা আপনার প্রতিষ্ঠানের প্রোডাক্ট এবং পরিষেবাগুলিতে নির্বিঘ্ন এবং আরও নিরাপদ অ্যাক্সেস প্রদান করে। এছাড়াও, আপনি কাস্টম OAuth স্কোপ নির্ধারণ করতে পারেন যাতে শুধুমাত্র প্রয়োজনীয় ডেটা শেয়ার করা যায়। এর ফলে, ব্যবহারকারীর ডেটা কীভাবে ব্যবহার করা হয় তা স্পষ্টভাবে নির্ধারণ করে তাদের বিশ্বাস বাড়ানো যায়।
বিজ্ঞাপন
লক্ষ্য করা
এই ক্ষেত্রে, আপনার অ্যাপ ব্যবহারকারীর আগ্রহের একটি প্রোফাইল তৈরি করে, যাতে তাকে আরও প্রাসঙ্গিক বিজ্ঞাপন দেখানো যায়।
ব্যবহার করার জন্য সাজেস্ট করা শনাক্তকারী: আপনার অ্যাপ বিজ্ঞাপনের জন্য কোনও আইডি ব্যবহার করলে এবং Google Play-তে আপলোড বা প্রকাশ করলে, সেই আইডি অবশ্যই বিজ্ঞাপন আইডি হতে হবে।
এই সাজেশন কেন?
এটি বিজ্ঞাপন-সম্পর্কিত ব্যবহারের একটি উদাহরণ যেখানে এমন একটি আইডির প্রয়োজন হতে পারে যা আপনার প্রতিষ্ঠানের বিভিন্ন অ্যাপ জুড়ে উপলভ্য, তাই বিজ্ঞাপন আইডি ব্যবহার করা সবচেয়ে উপযুক্ত সমাধান। Google Play ডেভেলপার কন্টেন্ট নীতি অনুযায়ী, বিজ্ঞাপন সংক্রান্ত ব্যবহারের ক্ষেত্রে বিজ্ঞাপন আইডি ব্যবহার করা বাধ্যতামূলক, কারণ ব্যবহারকারী এটি রিসেট করতে পারেন।
আপনি অ্যাপে ব্যবহারকারীর ডেটা শেয়ার করুন বা না করুন, বিজ্ঞাপনের উদ্দেশ্যে ডেটা সংগ্রহ ও ব্যবহার করলে, আপনাকে Play Console-এর অ্যাপ কন্টেন্ট পৃষ্ঠার ডেটা সুরক্ষা বিভাগে বিজ্ঞাপনের উদ্দেশ্য ঘোষণা করতে হবে।
পরিমাপ
এই ক্ষেত্রে, আপনার অ্যাপ একই ডিভাইসে আপনার প্রতিষ্ঠানের অ্যাপ জুড়ে ব্যবহারকারীর আচরণের উপর ভিত্তি করে একটি প্রোফাইল তৈরি করে।
ব্যবহার করার জন্য সাজেস্ট করা আইডেন্টিফায়ার: বিজ্ঞাপন আইডি বা Play ইনস্টল রেফারার API
এই সাজেশন কেন?
এটি বিজ্ঞাপন-সম্পর্কিত ব্যবহারের কেস যার জন্য এমন একটি আইডির প্রয়োজন হতে পারে যা আপনার প্রতিষ্ঠানের বিভিন্ন অ্যাপ জুড়ে উপলভ্য, তাই বিজ্ঞাপন আইডি ব্যবহার করা হল সবচেয়ে উপযুক্ত সমাধান। আপনি যদি বিজ্ঞাপনের ব্যবহারের ক্ষেত্রে কোনও আইডি ব্যবহার করেন, তাহলে সেই আইডিটি অবশ্যই বিজ্ঞাপন আইডি হতে হবে কারণ ব্যবহারকারী এটি রিসেট করতে পারবেন। Google Play ডেভেলপার কন্টেন্ট নীতি থেকে আরও জানুন।
কনভার্সন
এই ক্ষেত্রে, আপনার মার্কেটিং স্ট্র্যাটেজি সফল হয়েছে কিনা তা শনাক্ত করতে আপনি কনভার্সন ট্র্যাক করছেন।
ব্যবহার করার জন্য সাজেস্ট করা আইডেন্টিফায়ার: বিজ্ঞাপন আইডি বা Play ইনস্টল রেফারার API
এই সাজেশন কেন?
এটি বিজ্ঞাপন-সম্পর্কিত ব্যবহারের একটি উদাহরণ যেখানে এমন একটি আইডির প্রয়োজন হতে পারে যা আপনার প্রতিষ্ঠানের বিভিন্ন অ্যাপ জুড়ে উপলভ্য, তাই বিজ্ঞাপন আইডি ব্যবহার করা সবচেয়ে উপযুক্ত সমাধান। Google Play ডেভেলপার কন্টেন্ট নীতি অনুযায়ী, বিজ্ঞাপন সংক্রান্ত ব্যবহারের ক্ষেত্রে বিজ্ঞাপন আইডি ব্যবহার করা বাধ্যতামূলক, কারণ ব্যবহারকারী এটি রিসেট করতে পারেন।
রিমার্কেটিং
এই ক্ষেত্রে, আপনার অ্যাপ ব্যবহারকারীর পূর্ববর্তী আগ্রহের ভিত্তিতে বিজ্ঞাপন দেখায়।
ব্যবহার করার জন্য সাজেস্ট করা শনাক্তকারী: বিজ্ঞাপন আইডি
এই সাজেশন কেন?
এটি বিজ্ঞাপন-সম্পর্কিত ব্যবহারের কেস যার জন্য এমন একটি আইডির প্রয়োজন হতে পারে যা আপনার প্রতিষ্ঠানের বিভিন্ন অ্যাপ জুড়ে উপলভ্য, তাই বিজ্ঞাপন আইডি ব্যবহার করা হল সবচেয়ে উপযুক্ত সমাধান। Google Play ডেভেলপার কন্টেন্ট নীতি অনুযায়ী, বিজ্ঞাপন সংক্রান্ত ব্যবহারের ক্ষেত্রে বিজ্ঞাপন আইডি ব্যবহার করা বাধ্যতামূলক, কারণ ব্যবহারকারী এটি রিসেট করতে পারেন।
অ্যাপ অ্যানালিটিক্স
এই ক্ষেত্রে, আপনার অ্যাপ ব্যবহারকারীর আচরণ মূল্যায়ন করে যাতে আপনি নিম্নলিখিত বিষয়গুলি নির্ধারণ করতে পারেন:
- আপনার প্রতিষ্ঠানের অন্য কোন প্রোডাক্ট বা অ্যাপ ব্যবহারকারীর জন্য উপযুক্ত হতে পারে।
- ব্যবহারকারীরা যাতে আপনার অ্যাপ ব্যবহার করতে আগ্রহী থাকেন তা কীভাবে নিশ্চিত করবেন।
- সাইন-আউট করা বা পরিচয় গোপন রাখা ব্যবহারকারীদের জন্য ব্যবহারের পরিসংখ্যান ও অ্যানালিটিক্স পরিমাপ করা।
সম্ভাব্য সমাধানের মধ্যে এগুলি অন্তর্ভুক্ত:
- অ্যাপ সেট আইডি: অ্যাপ সেট আইডি আপনাকে একাধিক অ্যাপ জুড়ে ব্যবহারকারীর আচরণ বিশ্লেষণ করতে দেয় যা আপনার প্রতিষ্ঠানের মালিকানাধীন, যতক্ষণ না আপনি ব্যবহারকারীর ডেটা বিজ্ঞাপনের উদ্দেশ্যে ব্যবহার করেন। আপনি যদি Google Play পরিষেবা দ্বারা পরিচালিত ডিভাইস টার্গেট করেন, তাহলে আমরা আপনাকে অ্যাপ সেটের ID ব্যবহার করার সাজেশন দিই।
- Firebase ID (FID): FID-এর স্কোপ হল সেই অ্যাপ যা এটি তৈরি করে, যা বিভিন্ন অ্যাপ জুড়ে ব্যবহারকারীদের ট্র্যাক করার জন্য শনাক্তকারীকে ব্যবহার করা থেকে আটকায়। এছাড়াও, ব্যবহারকারী এটি রিসেট করতে পারেন, কারণ ব্যবহারকারী অ্যাপ ডেটা মুছে দিতে বা অ্যাপটি আবার ইনস্টল করতে পারেন। FID তৈরি করার প্রসেসটি সহজ; Firebase ইনস্টলেশন গাইড দেখুন।
অ্যাপ ডেভেলপমেন্ট
ক্র্যাশ রিপোর্টিং
এই ক্ষেত্রে, আপনার অ্যাপ ব্যবহারকারীর ডিভাইসে কখন এবং কেন ক্র্যাশ করে সেই সংক্রান্ত ডেটা সংগ্রহ করে।
ব্যবহার করার জন্য সাজেস্ট করা আইডেন্টিফায়ার: FID বা অ্যাপ সেটের ID
এই সাজেশন কেন?
FID যে অ্যাপে তৈরি হয়, সেই অ্যাপের মধ্যেই সীমাবদ্ধ থাকে, যার ফলে বিভিন্ন অ্যাপ জুড়ে ব্যবহারকারীকে ট্র্যাক করার জন্য শনাক্তকারী ব্যবহার করা যায় না। এছাড়াও, ব্যবহারকারী এটি রিসেট করতে পারেন, কারণ ব্যবহারকারী অ্যাপ ডেটা মুছে দিতে বা অ্যাপটি আবার ইনস্টল করতে পারেন। FID তৈরি করার প্রসেসটি সহজ; Firebase ইনস্টলেশন গাইড দেখুন। অ্যাপ সেট আইডি আপনাকে একাধিক অ্যাপ জুড়ে ব্যবহারকারীর আচরণ বিশ্লেষণ করতে দেয় যা আপনার প্রতিষ্ঠান মালিকানাধীন, যতক্ষণ না আপনি বিজ্ঞাপনের উদ্দেশ্যে ব্যবহারকারীর ডেটা ব্যবহার করেন।
পারফর্ম্যান্স রিপোর্টিং
এই ক্ষেত্রে, আপনার অ্যাপের কোয়ালিটি উন্নত করতে সাহায্য করার জন্য, আপনার অ্যাপ পারফর্ম্যান্স মেট্রিক সংগ্রহ করে, যেমন লোড টাইম এবং ব্যাটারির ব্যবহার।
ব্যবহার করার জন্য সাজেস্ট করা শনাক্তকারী: Firebase পারফর্ম্যান্স মনিটরিং
এই সাজেশন কেন?
Firebase পারফর্ম্যান্স মনিটরিং আপনাকে সেইসব মেট্রিকের উপর ফোকাস করতে সাহায্য করে যেগুলি আপনার কাছে সবচেয়ে গুরুত্বপূর্ণ এবং আপনার অ্যাপে সাম্প্রতিক পরিবর্তনের প্রভাব পরীক্ষা করতে সাহায্য করে।
অ্যাপ টেস্টিং
এই ক্ষেত্রে, আপনার অ্যাপ টেস্টিং বা ডিবাগিংয়ের উদ্দেশ্যে আপনার অ্যাপের সাথে ব্যবহারকারীর অভিজ্ঞতা মূল্যায়ন করে।
ব্যবহার করার জন্য সাজেস্ট করা আইডেন্টিফায়ার: FID বা অ্যাপ সেটের ID
এই সাজেশন কেন?
FID যে অ্যাপে তৈরি হয়, সেই অ্যাপের মধ্যেই সীমাবদ্ধ থাকে, যার ফলে বিভিন্ন অ্যাপ জুড়ে ব্যবহারকারীকে ট্র্যাক করার জন্য শনাক্তকারী ব্যবহার করা যায় না। এছাড়াও, ব্যবহারকারী এটি রিসেট করতে পারেন, কারণ ব্যবহারকারী অ্যাপ ডেটা মুছে দিতে বা অ্যাপটি আবার ইনস্টল করতে পারেন। FID তৈরি করার প্রসেসটি সহজ; Firebase ইনস্টলেশন গাইড দেখুন। অ্যাপ সেট আইডি আপনাকে একাধিক অ্যাপ জুড়ে ব্যবহারকারীর আচরণ বিশ্লেষণ করতে দেয় যা আপনার প্রতিষ্ঠান মালিকানাধীন, যতক্ষণ না আপনি বিজ্ঞাপনের উদ্দেশ্যে ব্যবহারকারীর ডেটা ব্যবহার করেন।
ক্রস-ডিভাইস ইনস্টলেশন
এই ক্ষেত্রে, একই ব্যবহারকারীর একাধিক ডিভাইসে অ্যাপ ইনস্টল করা থাকলে, আপনার অ্যাপকে সঠিক ইনস্ট্যান্স শনাক্ত করতে হবে।
ব্যবহার করার জন্য সাজেস্ট করা আইডেন্টিফায়ার: FID বা GUID
এই সাজেশন কেন?
FID বিশেষভাবে এই উদ্দেশ্যে ডিজাইন করা হয়েছে; এর পরিধি অ্যাপের মধ্যেই সীমাবদ্ধ যাতে এটি বিভিন্ন অ্যাপ জুড়ে ব্যবহারকারীদের ট্র্যাক করতে ব্যবহার করা না যায় এবং অ্যাপটি আবার ইনস্টল করার পরে এটি রিসেট করা হয়। বিরল ক্ষেত্রে যেখানে FID যথেষ্ট নয়, সেখানে আপনি GUID ব্যবহার করতে পারেন।
নিরাপত্তা
অপব্যবহার শনাক্তকরণ
এই ক্ষেত্রে, আপনি ব্যাকএন্ড পরিষেবা আক্রমণকারী একাধিক নকল ডিভাইস শনাক্ত করার চেষ্টা করছেন।
ব্যবহার করার জন্য সাজেস্ট করা আইডেন্টিফায়ার: Google Play Integrity API ইন্টিগ্রিটি টোকেন
এই সাজেশন কেন?
কোনও অনুরোধ এমুলেটর বা অন্য কোনও ডিভাইসের কোড স্পুফিংয়ের পরিবর্তে আসল Android ডিভাইস থেকে এসেছে কিনা তা যাচাই করতে, Google Play Integrity API ব্যবহার করুন।
বিজ্ঞাপন প্রতারণা
এই ক্ষেত্রে, আপনার অ্যাপ চেক করে যে আপনার অ্যাপে কোনও ব্যবহারকারীর ইম্প্রেশন এবং অ্যাকশন আসল এবং যাচাইযোগ্য কিনা।
ব্যবহার করার জন্য সাজেস্ট করা শনাক্তকারী: বিজ্ঞাপন আইডি
এই সাজেশন কেন?
Google Play ডেভেলপার কন্টেন্ট নীতি অনুযায়ী, বিজ্ঞাপনের ক্ষেত্রে বিজ্ঞাপন আইডি ব্যবহার করা বাধ্যতামূলক, কারণ ব্যবহারকারী এটি রিসেট করতে পারেন।
ডিজিটাল রাইটস ম্যানেজমেন্ট (DRM)
এই ক্ষেত্রে, আপনার অ্যাপ মেধা সম্পত্তি বা পেড কন্টেন্টে প্রতারণামূলক অ্যাক্সেস সুরক্ষিত করতে চায়।
ব্যবহার করার জন্য সাজেস্ট করা শনাক্তকারী: FID বা GUID ব্যবহার করলে, কন্টেন্টের সীমা এড়িয়ে যাওয়ার জন্য ব্যবহারকারীকে অ্যাপটি আবার ইনস্টল করতে হয়, যা বেশিরভাগ লোককেই নিরুৎসাহিত করার জন্য যথেষ্ট। এটি যথেষ্ট সুরক্ষা না হলে, Android একটি DRM API প্রদান করে, যা কন্টেন্টে অ্যাক্সেস সীমিত করতে ব্যবহার করা যেতে পারে, প্রতি-APK শনাক্তকারী, Widevine ID অন্তর্ভুক্ত করে।
ব্যবহারকারীর অভিরুচি
এই ক্ষেত্রে, আপনার অ্যাপ প্রতিটি ডিভাইসের জন্য ব্যবহারকারীর স্ট্যাটাস আপনার অ্যাপে সেভ করে, বিশেষ করে সেইসব ব্যবহারকারীর জন্য যারা সাইন-ইন করেননি। আপনি এই স্টেট অন্য অ্যাপে ট্রান্সফার করতে পারেন যা একই ডিভাইসে একই কী দিয়ে সাইন করা হয়েছে।
ব্যবহার করার জন্য সাজেস্ট করা আইডেন্টিফায়ার: FID বা GUID
এই সাজেশন কেন?
আবার ইনস্টল করার মাধ্যমে তথ্য রেখে দেওয়া সাজেস্ট করা হয় না কারণ ব্যবহারকারী অ্যাপ আবার ইনস্টল করার মাধ্যমে তার পছন্দ রিসেট করতে চাইতে পারেন।