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

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

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

लागू करना

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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