APN ও CarrierConfig

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

আপনার কর্পোরেট ইমেল আইডি দিয়ে Google অ্যাকাউন্ট

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

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

স্থানীয় ডেভেলপমেন্ট এনভায়রনমেন্ট তৈরি করা

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

এছাড়াও, পরিবর্তন ট্র্যাক করতে আমরা আপনাকে Google Issue Tracker ব্যবহার করার জন্য বিশেষভাবে সাজেস্ট করি।

সমস্যার ব্যাপারে অভিযোগ জানান

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

APN সংক্রান্ত সমস্যা

সমস্যার অ্যাট্রিবিউটগুলি এইভাবে সেট করুন:

শিরোনাম: CarrierXYZ-এর জন্য APN যোগ করুন/পরিবর্তন করুন/সরিয়ে দিন

বিবরণ: আপনি যে পরিবর্তনের অনুরোধ করছেন তার বিস্তারিত বিবরণ যোগ করুন, এর মধ্যে APN সেটিংসও অন্তর্ভুক্ত।

CarrierConfig বাগ

সমস্যার অ্যাট্রিবিউটগুলি এইভাবে সেট করুন:

বিষয়: CarrierXYZ-এর জন্য কনফিগারেশন পরিবর্তন

বিবরণ: আপনি যেসব পরিবর্তনের অনুরোধ করছেন তার বিস্তারিত বিবরণ যোগ করুন।

পরিবর্তনগুলি জমা দিন

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

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

APN সিনট্যাক্স

Android প্রোজেক্টের নাম - ডিভাইস/স্যাম্পেল

ফাইলের নাম - etc/apns-full-conf.xml (Google Git মূল লিঙ্ক)

ফাইলে 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. আপনি রুট অ্যাক্সেস আছে এমন যেকোনও Android ডিভাইস কানেক্ট করুন।
  2. /etc/apns-conf.xml-এ সেটিংস যোগ করুন।
  3. APN সেটিংস রিসেট করুন।
  4. APN সেটিংসে, প্রোফাইল সঠিকভাবে লোড হয়েছে কিনা তা কনফার্ম করুন।
  5. প্রতিটি প্রোফাইলের জন্য, ডেটা কানেক্টিভিটি, ওয়াই-ফাই হটস্পট ও MMS পরীক্ষা করে দেখুন এগুলি সঠিকভাবে কাজ করছে কিনা।

কমিট মেসেজ

[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 সিনট্যাক্স

প্রোজেক্টের নাম - প্ল্যাটফর্ম/প্যাকেজ/অ্যাপ/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 করতে পারেন।

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