راه‌اندازی Charles Proxy برای «کیت توسعه نرم‌افزار تبلیغات تلفن همراه Google» در Android N یا بالاتر

انتخاب پلاتفرم: Android Android (قدیمی)

در Android N یا بالاتر، تماس‌های آگهی فقط زمانی در Charles proxy قابل‌مشاهده است که مراحل زیر انجام شود:

  1. «خدمات Google Play» را در دستگاه همراه به‌روز کنید.
  2. «ردیابی شبکه» را در دستگاه همراه فعال کنید.
  3. گواهینامه Charles SSL را در دستگاهتان نصب کنید و پراکسی را راه‌اندازی کنید.
  4. «پراکسی SSL» را برای برنامه تلفن همراهتان فعال کنید.

به‌روزرسانی «خدمات Google Play» در دستگاه همراه

برای شبیه‌ساز، اگر بخش Google Play را در منو کناری نمی‌بینید، ممکن است لازم باشد Android Studio را به‌روزرسانی کنید و جدیدترین تصاویر سیستم را در پیکربندی دستگاه مجازی بارگیری کنید. حتماً از تصویر سیستم با Google Play در هدف آن استفاده کنید.

از منو کناری برای بررسی و به‌روزرسانی «خدمات Google Play» به جدیدترین نسخه استفاده کنید. حداقل نسخه کاری «خدمات Google Play» 14.5.74 است.

برای دستگاه همراه فیزیکی (تلفن یا رایانه لوحی)، می‌توانید Google Play را جستجو کنید یا این پیوند را دنبال کنید تا Google Play مستقیماً باز شود.

فعال کردن ردیابی شبکه در دستگاه همراه

برای فعال کردن ردیابی شبکه، باید گزینه‌های توسعه‌دهندگان را برای دستگاهتان فعال کنید. برنامه «تنظیمات Google» را راه‌اندازی کنید و Google > «آگهی‌ها» > «فعال کردن گزارش اشکال‌زدایی برای آگهی‌ها» را انتخاب کنید. راهنمای دقیق‌تری برای ناشران AdMob و Google Ad Manager دردسترس است.

گواهینامه Charles SSL را در دستگاهتان نصب کنید و پراکسی را راه‌اندازی کنید

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

استفاده از شبیه‌ساز با پراکسی ساده‌تر است زیرا شبیه‌ساز ازقبل به همان شبکه Wi-Fi متصل است که رایانه اجراکننده Charles به آن متصل است. هنگام استفاده از شبیه‌ساز با پراکسی، پراکسی را روی localhost (http://127.0.0.1) و درگاهی که پراکسی Charles روی آن اجرا می‌شود (در گزینه منو Charles، پراکسی > تنظیمات پراکسی) تنظیم کنید.

اگر از دستگاه همراه فیزیکی (تلفن یا رایانه لوحی) استفاده می‌کنید، باید دستگاه همراه را بااستفاده از تنظیمات پیشرفته شبکه به همان شبکه Wi-Fi رایانه‌ای که Charles در آن اجرا می‌شود متصل کنید. هنگام تنظیم تنظیمات پروکسی برای دستگاه فیزیکی خود، از گزینه منو Charles راهنما > نشانی IP محلی برای دریافت نشانی IP رایانه خود استفاده کنید تا آن را به‌عنوان نشانی پروکسی در دستگاه خود وارد کنید (برای اینکه این کار انجام شود، باید در یک شبکه Wi-Fi باشید). از درگاهی که کارگزار نیابتی Charles روی آن اجرا می‌شود استفاده کنید.

فعال کردن پراکسی SSL برای برنامه تلفن همراه

برای اینکه Charles بتواند ترافیک SSL برنامه تلفن همراهتان را رهگیری کند، باید اعلام کنید که برنامه‌تان می‌تواند به گواهینامه SSL ارائه‌شده توسط کاربر اعتماد کند.

ابتدا باید فایل منبع XML جدیدی برای پیکربندی امنیت شبکه در زیر اضافه کنید

<network-security-config>
   <debug-overrides>
       <trust-anchors>
           <!-- Trust user added CAs while debuggable only -->
           <certificates src="user" />
       </trust-anchors>
   </debug-overrides>
</network-security-config>

سپس، فایل AndroidManifest.xml را به‌روز کنید تا از پیکربندی امنیت شبکه استفاده کند.

<?xml version="1.0" encoding="utf-8"?>
<manifest ... >
    <application ...
                 android:networkSecurityConfig="@xml/network_security_config"
                 ... >
        ...
    </application>
</manifest>

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