ইনস্ট্যান্স আইডি আপনার অ্যাপের পৃথক ইনস্টলেশন শনাক্ত করে। যেহেতু প্রতিটি ইন্সট্যান্স আইডি একটি নির্দিষ্ট অ্যাপ এবং ডিভাইসের জন্য অনন্য, তাই তারা Firebase পরিষেবাগুলিকে নির্দিষ্ট অ্যাপের উদাহরণগুলি উল্লেখ করার একটি উপায় দেয়। উদাহরণস্বরূপ, ক্লাউড মেসেজিং কোন ডিভাইসে বার্তা পাঠাতে হবে তা নির্ধারণ করতে ইন্সট্যান্স আইডি ব্যবহার করে।
বেশ কিছু ফায়ারবেস পরিষেবা তাদের বৈশিষ্ট্যগুলিকে পাওয়ার জন্য ইনস্ট্যান্স আইডি ব্যবহার করে:
- বিশ্লেষণ
- ক্র্যাশলাইটিক্স
- ক্লাউড মেসেজিং
- রিমোট কনফিগারেশন
ইনস্ট্যান্স আইডিগুলির সাথে যুক্ত অ্যাপ ডেটা পরিচালনা করুন
যে পরিষেবাগুলি ইনস্টলেশন শনাক্ত করতে ইনস্ট্যান্স আইডি ব্যবহার করে সেগুলিকে সেই ডিভাইসের সাথে প্রাসঙ্গিক ডেটা সংযুক্ত করার জন্য একটি কী হিসাবে ব্যবহার করে৷ উদাহরণস্বরূপ, ক্র্যাশলিটিক্স ডিভাইসে ঘটে যাওয়া ক্র্যাশগুলি রেকর্ড করতে ইন্সট্যান্স আইডি ব্যবহার করে, রিমোট কনফিগারেশন কনফিগারেশন আনতে সেগুলি ব্যবহার করে এবং অ্যানালিটিক্স নির্দিষ্ট দর্শকদের ট্র্যাক করতে ইনস্ট্যান্স আইডি ব্যবহার করে।
ইনস্ট্যান্স আইডিগুলির সাথে যুক্ত ডেটা সাধারণত ব্যক্তিগতভাবে সনাক্ত করা যায় না , তবে ব্যবহারকারীদের এটি পরিচালনা করার জন্য একটি বিকল্প দেওয়া এখনও সহায়ক হতে পারে। সেই লক্ষ্যে, ফায়ারবেস ইনস্ট্যান্স-আইডি-সম্পর্কিত ডেটা সংগ্রহ পরিচালনা করার দুটি উপায় অফার করে:
- ইনস্ট্যান্স আইডি মুছুন। আপনি একটি সার্ভার- বা ক্লায়েন্ট-সাইড API কল দিয়ে একটি ইনস্ট্যান্স আইডি মুছতে পারেন। একটি ইন্সট্যান্স আইডি মুছে দিলে আইডি নিজেই এবং এর সাথে সম্পর্কিত সমস্ত ডেটা মুছে যায়।
- আইডি তৈরি করে এমন পরিষেবাগুলি অক্ষম করুন৷ বেশিরভাগ ফায়ারবেস পরিষেবাগুলি যেগুলি ইনস্ট্যান্স আইডি ব্যবহার করে সেগুলি চালু হওয়ার সময় ডিভাইসে একটি না থাকলে স্বয়ংক্রিয়ভাবে একটি নতুন আইডি তৈরি করে৷ আপনার অ্যাপ যাতে অবাঞ্ছিত ইনস্ট্যান্স আইডি তৈরি না করে তা নিশ্চিত করতে, সেই পরিষেবাগুলির জন্য স্বয়ংক্রিয়-সূচনা অক্ষম করুন।
একটি ইনস্ট্যান্স আইডি মুছুন
একটি ইনস্ট্যান্স আইডি মুছে ফেলা হলে উপরে তালিকাভুক্ত যেকোনও ফায়ারবেস পরিষেবাতে সেই আইডির সাথে সম্পর্কিত ডেটা মুছে যায়। এটি আইডি মুছে ফেলাকে ব্যবহারকারীর ডেটা সাফ করার জন্য একটি সহায়ক সরঞ্জাম করে তোলে, তবে এটি একটি সতর্কতার সাথে আসে: আপনি যদি একাধিক পরিষেবা ব্যবহার করেন যা ইনস্ট্যান্স আইডিগুলির উপর নির্ভর করে, তাহলে একটি আইডি মুছে ফেলা তাদের সমস্ত থেকে ডেটা সাফ করে।
ইনস্ট্যান্স আইডি পরিষেবা কয়েক দিনের মধ্যে একটি নতুন আইডি তৈরি করে, যদি না আপনি আপনার অ্যাপে সমস্ত ইনস্ট্যান্স-আইডি-জেনারেটিং পরিষেবাগুলি অক্ষম করেন৷ Firebase সদ্য তৈরি করা আইডিটিকে একেবারে নতুন অ্যাপ উদাহরণ হিসেবে বিবেচনা করে এবং এটিকে কোনোভাবেই পূর্ববর্তী আইডির সাথে যুক্ত করে না।
একটি ক্লায়েন্ট API কল সহ একটি আইডি মুছুন
Firebase পরিষেবাগুলির দ্বারা তৈরি আইডিগুলি মুছতে, Firebase ইনস্ট্যান্স আইডি API থেকে উপযুক্ত পদ্ধতিতে কল করুন:
সুইফট
InstanceID.instanceID().deleteID { error in
if let error = error {
print("Error deleting instance ID: \(error)")
}
}
উদ্দেশ্য গ
[FIRInstanceID instanceID] deleteIDWithHandler:^(NSError *error) {
if error != nil {
NSLog(@"Error deleting instance ID: %@", error);
}
}];
অ্যান্ড্রয়েড
FirebaseInstanceId.deleteInstanceId();
একটি সার্ভার API কল সহ একটি আইডি মুছুন৷
সার্ভার API কলগুলির সাথে একটি ইন্সট্যান্স আইডি মুছতে, আপনার সার্ভারে Firebase অ্যাডমিন SDK যোগ করুন , যদি আপনি ইতিমধ্যে না থাকেন।
এটি যোগ হয়ে গেলে, আপনার পছন্দের ভাষায় ইন্সট্যান্স আইডি মুছে ফেলার ফাংশনে একটি কলের মাধ্যমে আইডি মুছুন:
Node.js
// An Instance ID sent from a client service SDK
const idToDelete = 'INSTANCE_ID';
admin.instanceId().deleteInstanceId(idToDelete);
জাভা
// An Instance ID sent from a client service SDK
String idToDelete = "INSTANCE_ID";
FirebaseInstanceId.getInstance().deleteInstanceIdAsync(idToDelete).get();
পাইথন
from firebase_admin import instance_id
# An Instance ID sent from a client service SDK
id_to_delete = 'INSTANCE_ID'
instance_id.delete_instance_id(id_to_delete)
যাওয়া
client, err := app.InstanceId(ctx)
if err != nil {
log.Fatalln("error initializing client", err)
}
iidToDelete := "INSTANCE_ID"
if err := client.DeleteInstanceId(ctx, iidToDelete); err != nil {
log.Fatalln("error deleting iid", err)
}
আপনি যখন সার্ভার এপিআই কলের মাধ্যমে একটি ইন্সট্যান্স আইডি মুছে দেন, তখন ফায়ারবেস পরিষেবাগুলি সংশ্লিষ্ট ডেটা মুছে দেয়, সেই আইডির জন্য নতুন ডেটা গ্রহণ করা বন্ধ করে দেয় এবং, কয়েক দিনের মধ্যে, ক্লায়েন্ট অ্যাপকে জানিয়ে দেয় যে আইডিটি মুছে ফেলা হয়েছে। যতক্ষণ না Firebase ক্লায়েন্ট অ্যাপকে অবহিত করে, ততক্ষণ অ্যাপের কিছু পরিষেবার কার্যকারিতা হ্রাস পেতে পারে।
আপনি যদি বর্তমান ইনস্ট্যান্স আইডি মুছে ফেলতে চান এবং অবিলম্বে একটি নতুন, স্বাধীন আইডি সহ Firebase পরিষেবাগুলি ব্যবহার করতে চান, তাহলে মুছে ফেলার জন্য উপরের ক্লায়েন্ট APIগুলির একটি ব্যবহার করুন৷
ইনস্ট্যান্স আইডি জেনারেশন অক্ষম করুন
যে পরিষেবাগুলি ইন্সট্যান্স আইডি ব্যবহার করে সেগুলি স্বয়ংক্রিয়ভাবে একটি নতুন আইডি তৈরি করে যখন সেগুলি একটি অ্যাপে আরম্ভ করা হয় যার বর্তমানে একটি নেই৷ সাধারণত, আপনার অ্যাপ চালু হলে সেই পরিষেবাগুলি স্বয়ংক্রিয়ভাবে শুরু হয়। ইনস্ট্যান্স আইডি জেনারেশন অক্ষম করতে, আপনাকে সেগুলি ব্যবহার করে এমন পরিষেবাগুলির জন্য স্বয়ংক্রিয়-সূচনা নিষ্ক্রিয় করতে হবে।
একটি সাধারণ পদ্ধতি হ'ল ব্যবহারকারীদের ডেটা সংগ্রহে অপ্ট-ইন করার বিকল্প দেওয়া: ইনস্ট্যান্স আইডি ব্যবহার করে এমন পরিষেবাগুলির জন্য স্বয়ংক্রিয়-সূচনা অক্ষম করুন, একটি ডায়ালগ প্রয়োগ করুন যা ব্যবহারকারীদের ডেটা সংগ্রহে তাদের সম্মতির জন্য অনুরোধ করে এবং একবার ম্যানুয়ালি পরিষেবাগুলি পুনরায় সক্ষম করুন। আপনার সম্মতি আছে।
ইনস্ট্যান্স-আইডি-ব্যবহারের পরিষেবাগুলির জন্য কীভাবে স্বয়ংক্রিয়-সূচনা নিষ্ক্রিয় করা যায় এবং পরিবর্তে সেগুলিকে ম্যানুয়ালি আরম্ভ করা যায় তা জানতে নীচের নির্দেশিকাগুলি পড়ুন:
- ক্লাউড মেসেজিং: অটো-ইনিশিয়ালাইজেশন (Android) প্রতিরোধ করুন বা অটো-ইনিশিয়ালাইজেশন প্রতিরোধ করুন (iOS+)
- ক্র্যাশ রিপোর্টিং: অপট-ইন রিপোর্টিং সক্ষম করুন
- বিশ্লেষণ: বিশ্লেষণ ডেটা সংগ্রহ কনফিগার করুন