ตั้งค่าพร็อกซี Charles สําหรับ SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google ใน Android N ขึ้นไป

เลือกแพลตฟอร์ม: Android Android (เดิม)

ใน Android N ขึ้นไป การเรียกโฆษณาจะปรากฏใน Charles Proxy ก็ต่อเมื่อทำตามขั้นตอนต่อไปนี้เท่านั้น

  1. ติดตั้งใบรับรอง SSL ของ Charles ในอุปกรณ์และตั้งค่าพร็อกซี
  2. เปิดใช้พร็อกซี SSL สำหรับแอปบนอุปกรณ์เคลื่อนที่

ติดตั้งใบรับรอง SSL ของ Charles ในอุปกรณ์และตั้งค่าพร็อกซี

หากต้องการใช้ Charles เป็นพร็อกซีสำหรับแอป ให้ดาวน์โหลดและติดตั้ง Charles ในคอมพิวเตอร์

หากต้องการบันทึกใบรับรองเป็นไฟล์ .pem หรือ .cer ให้เลือกความช่วยเหลือ > พร็อกซี 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 ได้