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

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

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

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

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

หากต้องการบันทึกใบรับรองเป็นไฟล์ .pem หรือ .cer ให้เลือกHelp > SSL Proxying > Save Charles Root Certificate หากต้องการติดตั้งใบรับรองในอุปกรณ์ ให้ทำตามข้อความแจ้งในความช่วยเหลือ > พร็อกซี 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 ได้