APN و CarrierConfig

اپراتورها می‌توانند اطلاعات نام نقطه دسترسی (APN) و تنظیمات پیکربندی مخصوص اپراتور ( CarrierConfig ) خود را در پروژه متن‌باز اندروید (AOSP) به‌روزرسانی کنند.

حساب گوگل با آدرس ایمیل شرکتی شما

برای به‌روزرسانی اطلاعات APN یا CarrierConfig خود، باید درخواست را با استفاده از یک حساب گوگل با یک آدرس ایمیل فعال شرکتی ارسال کنید (برای مثال، درخواست به‌روزرسانی APN از شرکت Acme باید از آدرس ایمیلی مانند foobar@acme.com ارسال شود).

اگر حساب گوگلی ندارید که به آدرس ایمیل شرکتی شما متصل باشد، از تمام حساب‌های جیمیل خود در مرورگرتان خارج شوید (توصیه می‌کنیم از یک ویژگی مرور خصوصی مانند پنجره ناشناس استفاده کنید تا از سردرگمی با سایر حساب‌هایتان جلوگیری شود) و سپس یک حساب گوگل با آدرس ایمیل شرکتی خود ایجاد کنید .

آماده‌سازی محیط توسعه محلی

اگر قبلاً هرگز کدی را به AOSP ارسال نکرده‌اید، باید محیط ساخت خود را راه‌اندازی کنید، با ابزارها آشنا شوید و نحوه ارسال وصله‌ها را درک کنید:

علاوه بر این، اکیداً توصیه می‌کنیم از ردیاب مشکلات گوگل برای پیگیری تغییرات استفاده کنید.

ثبت اشکال

  1. به issuetracker.google.com بروید و با استفاده از آدرس ایمیل شرکتی خود وارد سیستم شوید (به بخش «حساب گوگل» با آدرس ایمیل شرکتی خود مراجعه کنید).
  2. پس از ورود به سیستم، روی ایجاد مشکل در سمت چپ صفحه کلیک کنید.
  3. در بخش کامپوننت ، گزینه Android Public Tracker > Framework را انتخاب کنید.
  4. برای وارد کردن عنوان و توضیحات، در صورت لزوم، به به‌روزرسانی APN یا به‌روزرسانی CarrierConfig ادامه دهید.

اشکال APN

ویژگی‌های اشکال را به صورت زیر تنظیم کنید:

عنوان: افزودن / تغییر / حذف APN برای CarrierXYZ

توضیحات: شرح مفصلی از تغییراتی که درخواست می‌کنید، از جمله تنظیمات APN، اضافه کنید.

اشکال CarrierConfig

ویژگی‌های اشکال را به صورت زیر تنظیم کنید:

عنوان: تغییرات پیکربندی برای CarrierXYZ

توضیحات: شرح مفصلی از تغییراتی که درخواست می‌کنید اضافه کنید.

ارسال تغییرات

برای ایجاد تغییرات:

  1. مشخص کنید کدام فایل را باید تغییر دهید.
  2. تغییراتی در فایل ایجاد کنید.
  3. با دنبال کردن دستورالعمل‌های ارسال پچ‌ها ، و توجه به دستورالعمل‌های پیام کامیت، از جمله قالب پیشنهادی، تغییرات را در مخزن محلی خود اعمال کنید.
  4. پس از اینکه تغییر خود را در تاریخچه شخصی خود اعمال کردید، آن را با استفاده از دستور repo upload در Gerrit آپلود کنید.
  5. پس از آپلود موفقیت‌آمیز، مخزن، آدرس اینترنتی (URL) صفحه جدیدی در Gerrit را ارائه می‌دهد. از این آدرس اینترنتی برای موارد زیر استفاده کنید:
    • پچ خود را در سرور بررسی مشاهده کنید
    • نظرات را اضافه کنید
    • برای پچ خود از داوران خاص درخواست بررسی کنید

نحو APN

نام پروژه اندروید - دستگاه/نمونه

نام فایل (ها) - etc/apns-full-conf.xml ( لینک اصلی گوگل گیت )

این فایل حاوی تنظیمات APN با فرمت XML است و به عنوان یک فایل نمونه عمل می‌کند، بنابراین هیچ تغییری در رفتار دستگاه‌های اندروید ایجاد نمی‌شود.

یک پیکربندی 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. برای هر پروفایل، اتصال داده، هات‌اسپات وای‌فای و 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، به نمونه APN های BICS مراجعه کنید.

نحو CarrierConfig

نام پروژه - platform/packages/apps/CarrierConfig

نام فایل (ها) - assets/carrier_config_ .xml ( لینک اصلی گوگل گیت )

فایل(های) XML مربوطه را در پوشه assets با استفاده از تاپل(های) MCC/MNC مربوطه شناسایی کنید. این فایل شامل شیء پیکربندی حامل در قالب 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

برای مثال، به فایل پیکربندی حامل به‌روزرسانی‌شده مراجعه کنید.

درخواست بررسی

برای درخواست بررسی:

  • به آدرس Gerrit URL مربوط به تغییر خود بروید و android-carrier-config-review@google.com را به عنوان یک بررسی‌کننده اضافه کنید.
  • همچنین می‌توانید مخاطب گوگل خود را به لیست CC در Gerrit اضافه کنید.
  • برای اهداف ردیابی، می‌توانید مسئول رسیدگی به مشکل را به android-carrier-config-review@google.com تغییر دهید.

پس از اینکه یک درخواست از فرآیند بررسی و تأیید عبور کرد، Gerrit به طور خودکار تغییر را در مخزن عمومی ادغام می‌کند. سایر کاربران می‌توانند repo sync اجرا کنند تا به‌روزرسانی را به کلاینت محلی خود منتقل کنند.