در شبیهساز اندروید، میتوانید از یک پروکسی برای اشکالزدایی ترافیک برنامه یا دسترسی به اینترنت از پشت یک فایروال شرکتی استفاده کنید. این شبیهساز دو مکانیسم پروکسی مجزا برای پشتیبانی از این موارد استفاده مختلف ارائه میدهد: پروکسی سیستم اندروید و پروکسی شبیهساز.
انتخاب پروکسی مناسب
قبل از پیکربندی یک پروکسی، درک دو مورد استفاده مهم است. پروکسی سیستم اندروید برای بررسی ترافیک برنامه است، در حالی که پروکسی شبیهساز برای پیمایش محدودیتهای شبکه است. این دو پروکسی متقابلاً منحصر به فرد هستند؛ شما فقط میتوانید یکی را در یک زمان فعال کنید.
| ویژگی | پروکسی سیستم اندروید | پروکسی شبیهساز |
|---|---|---|
| مورد استفاده اصلی | اشکالزدایی برنامه | دور زدن فایروال |
| لایه عملیاتی | لایه شبکه | لایه کاربرد |
| پیکربندی | رابط کاربری تنظیمات وایفای سیستم اندروید | رابط کاربری کنترلهای توسعهیافتهی شبیهساز یا پرچم -http-proxy . |
| اشکالزدایی HTTPS | بله - به ابزارهایی مانند Charles Proxy اجازه میدهد تا رهگیری ترافیک هنگام وجود گواهی نصب شده است. | خیر - یک تونل TCP ایجاد میکند و از آن جلوگیری میکند بازرسی SSL. |
| غیر HTTP/HTTPS را مدیریت میکند ترافیک | خیر - در درجه اول فقط HTTP را مدیریت میکند و ترافیک HTTPS. | بله - تمام ترافیک TCP را ارسال میکند. |
مورد استفاده ۱: اشکالزدایی برنامه با پروکسی سیستم اندروید
برای اشکالزدایی ترافیک شبکه برنامه خود، مانند بررسی درخواستهای HTTPS با ابزاری مانند Charles Proxy، باید از Android System Proxy استفاده کنید.
این پروکسی در لایه برنامه در سیستم عامل اندروید عمل میکند. این پروکسی به ابزارهای اشکالزدایی اجازه میدهد تا ترافیک را رهگیری و بررسی کنند، اما این امر مستلزم نصب گواهینامههای امنیتی لازم روی دستگاه شبیهسازی شده است.

پیکربندی
شما میتوانید پروکسی سیستم اندروید را به دو روش پیکربندی کنید:
- پیکربندی دستی : در شبیهساز، به تنظیمات > شبکه و اینترنت > وایفای بروید، شبکه خود را انتخاب کنید و تنظیمات پروکسی را به صورت دستی وارد کنید.
- پیکربندی خودکار : شما میتوانید پروکسی سیستم اندروید را به صورت برنامهنویسی پیکربندی کنید. این کار با ایجاد یک تست ابزار دقیق که از یک چارچوب اتوماسیون رابط کاربری، مانند UI Automator ، برای باز کردن برنامه تنظیمات اندروید و اعمال پیکربندی پروکسی بدون دخالت دستی استفاده میکند، انجام میشود.
مورد استفاده ۲: دور زدن فایروالهای سازمانی با پروکسی شبیهساز
در بسیاری از شبکههای شرکتی، مدیران شبکه از اتصال مستقیم به اینترنت خودداری میکنند و در عوض باید از طریق یک پروکسی خاص عبور کنند. برای دسترسی به منابع خارجی از درون چنین شبکه محدودی، باید از پروکسی شبیهساز استفاده کنید.
این مکانیزم در سطح شبکه پایینتری عمل میکند و تمام ترافیک TCP دستگاه شبیهسازیشده را از طریق پروکسی مشخصشده مسیریابی میکند و آن را برای پیمایش فایروال ایدهآل میسازد. این مکانیزم درخواستهای HTTP را از دستگاه مجازی قبل از ارسال به پروکسی، بهطور شفاف بازنویسی میکند و به آنها اجازه میدهد بهدرستی کار کنند.
پیکربندی
هنگام استفاده از شبیهساز در اندروید استودیو ، میتوانید یک پروکسی را با تنظیمات موجود در منوی اندروید استودیو ( Settings > Appearance & Behavior > System Settings > HTTP Proxy ) پیکربندی کنید. میتوانید جزئیات بیشتر را در بخش «تنظیم پروکسی اندروید استودیو» در مستندات اندروید استودیو بیابید.
هنگام استفاده از شبیهساز به صورت مستقل ( خارج از اندروید استودیو )، میتوانید پروکسی شبیهساز را با استفاده از یکی از روشهای زیر پیکربندی کنید:
پرچم خط فرمان : شبیهساز را از خط فرمان با پرچم
-http-proxy <proxy>اجرا کنید. اطلاعات<proxy>را میتوان در قالبhttp://<machineName>:<port>یاhttp://<username>:<password>@<machineName>:<port>مشخص کرد.emulator -http-proxy http://<machineName>:<port>یا
emulator @MyAvd -http-proxy http://<username>:<password>@<machineName>:<port>متغیر محیطی : متغیر محیطی
http_proxyرا با تنظیمات پروکسی خود تعریف کنید. شبیهساز در هنگام راهاندازی، وجود این متغیر را بررسی میکند و در صورت تعریف، مقدار آن را به طور خودکار استفاده میکند.کنترلهای پیشرفته : کنترلهای پیشرفته شبیهساز را باز کنید، به تنظیمات > پروکسی بروید و پیکربندی پروکسی HTTP خود را به صورت دستی وارد کنید. شبیهساز این تنظیمات را برای دستگاه ذخیره میکند و آنها را با راهاندازی مجدد بازیابی میکند.

پروکسی شبیهساز در لایه شبکه عمل میکند. این پروکسی ترافیک HTTPS را روی TCP تونل میکند، اما این ترافیک بدون رمزگشایی ارسال میشود که مانع از بازرسی HTTPS میشود. پروکسی شبیهساز از تغییر مسیر UDP پشتیبانی نمیکند.
تعامل با اندروید استودیو
اندروید استودیو پنجره تنظیمات پروکسی مخصوص به خود را برای دانلود بهروزرسانیها و کتابخانهها دارد. وقتی یک شبیهساز را از اندروید استودیو اجرا میکنید، تنظیمات پروکسی IDE را یک بار میخواند تا پیکربندی پروکسی شبیهساز را پر کند. با این حال، این تنظیمات روی پروکسی سیستم اندروید تأثیری ندارند .