راه‌اندازی پراکسی Charles

انتخاب پلاتفرم: 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 را جستجو کنید یا این پیوند را دنبال کنید تا Google Play مستقیماً باز شود.

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

برای روشن کردن ردیابی شبکه، گزینه‌های توسعه‌دهندگان را در دستگاهتان فعال کنید. برای جزئیات، پیکربندی گزینه‌های توسعه‌دهندگان در دستگاه را ببینید.

برنامه «تنظیمات Google» را باز کنید و Google > Ads > فعال کردن گزارش اشکال‌زدایی برای آگهی‌ها را انتخاب کنید. برای جزئیات، به ردیابی شبکه مراجعه کنید.

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

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

برای ذخیره کردن گواهینامه به‌عنوان فایل .pem یا .cer، Help > SSL Proxying > Save Charles Root Certificate (راهنما > پراکسی SSL > ذخیره گواهینامه ریشه Charles) را انتخاب کنید. برای نصب گواهی در دستگاهتان، پیام‌واره‌های موجود در راهنما > پراکسی SSL را دنبال کنید.

اگر از شبیه‌ساز Android با پراکسی استفاده می‌کنید، نشانی پراکسی را روی http://127.0.0.1 تنظیم کنید. در Charles، در پراکسی > تنظیمات پراکسی، درگاه را روی مقدار نشان‌داده‌شده تنظیم کنید.

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

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

برای اینکه Charles بتواند ترافیک SSL برنامه تلفن همراهتان را رهگیری کند، اعلام کنید که برنامه‌تان می‌تواند به گواهینامه SSL اعتماد کند. می‌توانید به گواهی نصب‌شده توسط کاربر اعتماد کنید یا گواهی Charles را به‌عنوان منبع خام در برنامه‌تان جاسازی کنید. برای مثال، می‌توانید گواهی را در فایل res/raw/charles_cert.pem ذخیره کنید.

ابتدا، فایل منبع XML جدیدی برای پیکربندی امنیت شبکه در فایل res/xml/network_security_config.xml اضافه کنید:

<network-security-config>
   <debug-overrides>
       <trust-anchors>
           <!-- Trust Charles SSL certificate stored in res/raw -->
           <certificates src="@raw/charles_cert" />
           <!-- 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 جستجو کنید.