APN এবং CarrierConfig

Android ওপেন সোর্স প্রজেক্টে (AOSP) ক্যারিয়ারগুলি তাদের অ্যাক্সেস পয়েন্টের নাম (APN) তথ্য এবং তাদের ক্যারিয়ার-নির্দিষ্ট কনফিগারেশন সেটিংস ( CarrierConfig ) আপডেট করতে পারে।

আপনার কর্পোরেট ইমেল ঠিকানা সহ Google অ্যাকাউন্ট

APN তথ্য বা আপনার CarrierConfig আপডেট করার জন্য, আপনাকে একটি সক্রিয় কর্পোরেট ইমেল ঠিকানা সহ একটি Google অ্যাকাউন্ট ব্যবহার করে অনুরোধ জমা দিতে হবে (উদাহরণস্বরূপ, Acme কোম্পানি থেকে একটি APN আপডেটের অনুরোধ foobar@acme.com এর মতো একটি ইমেল ঠিকানা থেকে আসা উচিত)।

আপনার যদি এমন কোনো Google অ্যাকাউন্ট না থাকে যা আপনার কর্পোরেট ইমেল ঠিকানার সাথে লিঙ্ক করে, তাহলে আপনার ব্রাউজার থেকে সমস্ত Gmail অ্যাকাউন্ট থেকে সাইন আউট করুন (আপনার অন্যান্য অ্যাকাউন্টের সাথে বিভ্রান্তি এড়াতে আমরা একটি ব্যক্তিগত ব্রাউজিং বৈশিষ্ট্য, যেমন একটি ছদ্মবেশী উইন্ডো ব্যবহার করার পরামর্শ দিই) এবং তারপর আপনার কর্পোরেট ইমেল ঠিকানা দিয়ে একটি Google অ্যাকাউন্ট তৈরি করুন

একটি স্থানীয় উন্নয়ন পরিবেশ প্রস্তুত করুন

আপনি যদি আগে কখনও AOSP-এ কোড জমা না করে থাকেন, তাহলে আপনাকে আপনার বিল্ড এনভায়রনমেন্ট শুরু করতে হবে, টুলগুলির সাথে পরিচিত হতে হবে এবং কীভাবে প্যাচ জমা দিতে হবে তা বুঝতে হবে:

উপরন্তু, আমরা দৃঢ়ভাবে সুপারিশ করি যে আপনি পরিবর্তনগুলি ট্র্যাক করতে Google ইস্যু ট্র্যাকার ব্যবহার করুন৷

একটি বাগ ফাইল করুন

  1. issuetracker.google.com এ যান এবং আপনার কর্পোরেট ইমেল ঠিকানা ব্যবহার করে সাইন ইন করুন ( আপনার কর্পোরেট ইমেল ঠিকানা সহ Google অ্যাকাউন্ট দেখুন)।
  2. লগ ইন করার পর, স্ক্রিনের বাম পাশে Create issue এ ক্লিক করুন।
  3. কম্পোনেন্টে , অ্যান্ড্রয়েড পাবলিক ট্র্যাকার > ফ্রেমওয়ার্ক নির্বাচন করুন
  4. শিরোনাম এবং বিবরণ লিখতে APN আপডেট বা CarrierConfig আপডেট চালিয়ে যান।

APN বাগ

নিম্নরূপ বাগ বৈশিষ্ট্য সেট করুন:

শিরোনাম: CarrierXYZ-এর জন্য APN যোগ / সংশোধন / সরান

বর্ণনা: APN সেটিংস সহ আপনার অনুরোধ করা পরিবর্তনগুলির একটি বিশদ বিবরণ যোগ করুন।

CarrierConfig বাগ

নিম্নরূপ বাগ বৈশিষ্ট্য সেট করুন:

শিরোনাম: CarrierXYZ এর জন্য কনফিগার পরিবর্তন

বর্ণনা: আপনার অনুরোধ করা পরিবর্তনগুলির একটি বিশদ বিবরণ যোগ করুন।

পরিবর্তন পেশ করুন

পরিবর্তন করতে:

  1. কোন ফাইল পরিবর্তন করতে হবে তা চিহ্নিত করুন।
  2. ফাইলে পরিবর্তন করুন।
  3. প্রস্তাবিত বিন্যাস সহ কমিট বার্তা নির্দেশিকাগুলিতে মনোযোগ দিয়ে প্যাচ জমা দেওয়ার নির্দেশাবলী অনুসরণ করে আপনার স্থানীয় সংগ্রহস্থলে পরিবর্তনগুলি প্রতিশ্রুতিবদ্ধ করুন৷
  4. আপনি আপনার ব্যক্তিগত ইতিহাসে আপনার পরিবর্তন করার পরে, repo upload কমান্ড ব্যবহার করে এটি গেরিটে আপলোড করুন।
  5. একটি সফল আপলোডের পরে, রেপো গেরিটে একটি নতুন পৃষ্ঠার URL প্রদান করে। এই URL ব্যবহার করুন:
    • পর্যালোচনা সার্ভারে আপনার প্যাচ দেখুন
    • মন্তব্য যোগ করুন
    • আপনার প্যাচের জন্য নির্দিষ্ট পর্যালোচকদের অনুরোধ করুন

APN সিনট্যাক্স

অ্যান্ড্রয়েড প্রকল্পের নাম - ডিভাইস/নমুনা

ফাইলের নাম(গুলি) - etc/apns-full-conf.xml ( গুগল গিট প্রধান লিঙ্ক )

ফাইলটিতে XML ফর্ম্যাটে APN সেটিংস রয়েছে এবং এটি একটি নমুনা ফাইল হিসাবে কাজ করে যাতে Android ডিভাইসগুলির আচরণে কোনও পরিবর্তন হয় না৷

একটি সাধারণ APN কনফিগারেশন এইরকম দেখায়:

<apn carrier="CarrierXYZ"
      mcc="123"
      mnc="123"
      apn="carrierxyz"
      type="default,supl,mms,ims,cbs"
      mmsc="http://mms.carrierxyz.com"
      mmsproxy="0.0.0.0"
      mmsport="80"
      bearer_bitmask="4|5|6|7|8|12"
/>

পরীক্ষামূলক

  1. আপনার রুট অ্যাক্সেস আছে এমন যেকোনো অ্যান্ড্রয়েড ডিভাইস সংযুক্ত করুন।
  2. /etc/apns-conf.xml-এ সেটিংস যোগ করুন।
  3. APN সেটিংস রিসেট করুন।
  4. APN সেটিংসে, প্রোফাইলগুলি সঠিকভাবে লোড হয়েছে তা নিশ্চিত করুন৷
  5. প্রতিটি প্রোফাইলের জন্য, ডেটা কানেক্টিভিটি, ওয়াই-ফাই হটস্পট এবং এমএমএস সঠিকভাবে কাজ করে তা নিশ্চিত করতে পরীক্ষা করুন।

প্রতিশ্রুতি বার্তা

[Example - "Add CarrierXYZ apns to sample apns"]
Bug: [Issue ID from Google Issue Tracker]
Test: No change to behavior as this is only a sample file

নমুনা CL

CL-এর উদাহরণের জন্য BICS APN-এর নমুনা দেখুন।

CarrierConfig সিনট্যাক্স

প্রকল্পের নাম - প্ল্যাটফর্ম/প্যাকেজ/অ্যাপস/ক্যারিয়ার কনফিগ

ফাইলের নাম(গুলি) - assets/carrier_config_ .xml ( Google Git প্রধান লিঙ্ক )

প্রাসঙ্গিক MCC/MNC টিপল(গুলি) দ্বারা সম্পদ ফোল্ডারে প্রাসঙ্গিক XML ফাইল(গুলি) সনাক্ত করুন৷ ফাইলটিতে XML ফর্ম্যাটে ক্যারিয়ার কনফিগার অবজেক্ট রয়েছে। বৈশিষ্ট্যের নামগুলি CarrierConfigManager-এর অধীনে কী হিসাবে সংজ্ঞায়িত করা হয়, এবং মানের প্রকার (int/string/bool) প্রত্যয় দ্বারা নির্দেশিত হয়।

সাধারণ int/string/bool বৈশিষ্ট্যগুলি এইরকম দেখায়:

<int name="vvm_port_number_int" value="5499" />
<string name="vvm_type_string">vvm_type_omtp</string >
<boolean name="vvm_cellular_data_required_bool" value="true" />

প্রতিশ্রুতি বার্তা

[Example - "Add VVM settings for CarrierXYZ"]

[Example - "Updated <mccmnc> carrier config file to include VVM settings
as defined by CarrierXYZ."]

Bug: [Issue ID from Google Issue Tracker]
Test: [Testing notes]

নমুনা CL

একটি উদাহরণ CL এর জন্য একটি আপডেট করা ক্যারিয়ার কনফিগার ফাইল দেখুন।

একটি পর্যালোচনা অনুরোধ

একটি পর্যালোচনা অনুরোধ করতে:

  • আপনার পরিবর্তনের Gerrit URL এ যান এবং একটি পর্যালোচক হিসেবে android-carrier-config-review@google.com যোগ করুন।
  • এছাড়াও আপনি Gerrit-এ CC তালিকায় আপনার Google পরিচিতি যোগ করতে পারেন।
  • ট্র্যাকিংয়ের উদ্দেশ্যে, আপনি সমস্যাটির অ্যাসাইনিকে android-carrier-config-review@google.com এ পরিবর্তন করতে পারেন।

পর্যালোচনা এবং যাচাইকরণ প্রক্রিয়ার মাধ্যমে জমা দেওয়ার পরে, গেরিট স্বয়ংক্রিয়ভাবে পরিবর্তনটিকে সর্বজনীন সংগ্রহস্থলে একত্রিত করে। অন্যান্য ব্যবহারকারীরা তাদের স্থানীয় ক্লায়েন্টে আপডেট টানতে repo sync চালাতে পারেন।