मोबाइल और इंटरनेट सेवा देने वाली कंपनी की पहचान

Android 9 पर काम करने वाले डिवाइस, सदस्यता से जुड़ी कैरियर की जानकारी को पहचान सकते हैं. इससे वे आईडी और कैरियर का नाम दे पाते हैं. Android, कैरियर आईडी का डेटाबेस बनाए रखता है. इसमें हर कैरियर और उसके यूनीक कैरियर आईडी के लिए, मैचिंग के नियम होते हैं. Android Open Source Project (AOSP) में, कैरियर आईडी डेटाबेस का कॉन्टेंट शामिल होता है. यह कॉन्टेंट, carrier_list.textpb फ़ाइल में होता है. यूनिफ़ाइड डेटाबेस, उन ऐप्लिकेशन में डुप्लीकेट लॉजिक को कम करता है जिन्हें कैरियर की पहचान करनी होती है. साथ ही, यह कैरियर की पहचान करने वाले एट्रिब्यूट के बारे में जानकारी को सीमित करता है.

कैरियर की पहचान करने की सुविधा को बेहतर बनाने के लिए, Android, आउट-ऑफ़-बैंड और कैरियर आईडी टेबल अपडेट करने की सुविधा देता है. हर अपडेट के साथ एक वर्शन नंबर होता है और इसे AOSP पर पब्लिश किया जाता है.

लागू करना

अगर आपको आउट-ऑफ़-बैंड अपडेट लागू करने हैं, तो AOSP से carrier_list.pb बाइनरी डाउनलोड करें. टेबल को पढ़ने लायक फ़ॉर्मैट में देखने के लिए, carrier_list.textpb पर जाएं.

कैरियर आईडी टेबल को डिवाइस के /data/misc/carrierid/ डेटा पार्टीशन में रखें. अगर कैरियर आईडी टेबल, मौजूदा वर्शन से नई है, तो डिवाइस इस टेबल को carrier ID database class में सेव करता है. शिपिंग कंपनी के आईडी डेटाबेस से सबसे नई जानकारी, इन पब्लिक तरीकों से मिलती है: getSimCarrierId() और getSimCarrierIdName().

डेटाबेस में कैरियर आईडी की जानकारी जोड़ना

डेटाबेस में कैरियर आईडी जोड़ने या उसे अपडेट करने के लिए, कैरियर की पहचान से जुड़ी जानकारी वाला फ़ॉर्म का इस्तेमाल करके अनुरोध सबमिट करें.

आपके अनुरोध की समीक्षा की जाती है. अगर इसे स्वीकार कर लिया जाता है, तो बदलाव को AOSP कोडबेस में carrier_list.pb पर भेज दिया जाता है. इसके बाद, अपडेट की गई सूची को कॉपी करके, अपनी पसंद के मुताबिक बनाई गई सूची में शामिल किया जा सकता है.

मोबाइल और इंटरनेट सेवा देने वाली कंपनी के आईडी को CarrierConfig के साथ इंटिग्रेट करना

Android 10 से, कैरियर कॉन्फ़िगरेशन में, कैरियर आईडी को कुंजियों के तौर पर इस्तेमाल किया जा सकता है. इससे CarrierService से कैरियर के हिसाब से कॉन्फ़िगरेशन फ़ेच किए जा सकते हैं.

मोबाइल और इंटरनेट सेवा देने वाली कंपनी के आईडी को CarrierConfig के साथ इंटिग्रेट करने के ये फ़ायदे हैं:

  • यह हर कैरियर के लिए सभी एमसीसी/एमएनसी पेयर को एक ही जगह पर इकट्ठा करता है. साथ ही, डुप्लीकेट या गलत डेटा को हटाता है.
  • यह हर कैरियर के लिए कैननिकल आइडेंटिफ़ायर बनाता है और अस्पष्टता को दूर करता है.
  • इससे मोबाइल वर्चुअल नेटवर्क ऑपरेटर (एमवीएनओ) को अलग-अलग आईडी से पहचाना जा सकता है. इसके लिए, उन्हें मोबाइल नेटवर्क ऑपरेटर (एमएनओ) के कॉन्फ़िगरेशन का हिस्सा होने की ज़रूरत नहीं होती.

कॉन्फ़िगरेशन डेटा को कैरियर आईडी पर माइग्रेट करना

कॉन्फ़िगरेशन डेटा को MCC/MNC पेयर से कैरियर आईडी पर माइग्रेट करने के लिए, यह तरीका अपनाएं:

  1. एक ही कैरियर की carrier_config_mccmnc.xml फ़ाइलों को एक साथ ग्रुप करें. किसी खास कैरियर के लिए, एमसीसी, एमएनसी, और एमवीएनओ की जानकारी को मैप करने के लिए, carrier_list.textpb का इस्तेमाल करें.

  2. कॉन्फ़िगरेशन को एक ही फ़ाइल में मर्ज करें.

  3. (ज़रूरी नहीं) एमएनओ से डेटा इनहेरिट करना. MVNO, लेगसी carrier_config_mccmnc.xml फ़ाइल में MNO से कॉन्फ़िगरेशन इनहेरिट करते हैं. कैरियर आईडी की मदद से, सभी कैरियर (एमवीएनओ भी शामिल हैं) के पास कॉन्फ़िगरेशन की खास फ़ाइल होती है. इसलिए, माइग्रेशन के दौरान एमएनओ का डेटा शामिल करने का सुझाव दिया जाता है.

  4. अगर MVNO कैरियर आईडी के लिए कॉन्फ़िगरेशन मौजूद नहीं है, तो getCarrierIdFromSimMccMnc का इस्तेमाल करके, MNO कैरियर आईडी से कॉन्फ़िगरेशन फ़ेच करें.

  5. नई फ़ाइल का नाम बदलकर carrier_config_carrierid_carrierid_carriername.xml कर दें. यहां carrierid, canonical_id से मेल खाना चाहिए और carriername, carrier_list.textpb में मौजूद carrier_name से मेल खाना चाहिए.