ข้อมูลรับรอง APN ของ Android และ Network ProxyInfo มีจุดประสงค์ต่างกัน
อ่านการกำหนดค่าพร็อกซีเครือข่ายผ่านอินเทอร์เฟซที่ Android รองรับ และแยกข้อมูลรับรองการเข้าถึงของผู้ให้บริการออกจากบัญชีพร็อกซี HTTP
แอป Android อาจต้องการที่อยู่พร็อกซีปัจจุบันโดยไม่ได้เป็นเจ้าของการตั้งค่าการเชื่อมต่อ เริ่มจากอินเทอร์เฟซพร็อกซีเครือข่ายแทนการค้นหาคอลัมน์ฐานข้อมูลที่ชื่อ user หรือ password
การกำหนดค่า APN ของโทรศัพท์อธิบายการเข้าถึงของผู้ให้บริการ ฟิลด์บัญชีของการกำหนดค่านั้นเป็นของการกำหนดค่านั้น ไม่ใช่ที่เก็บข้อมูลรับรองทั่วไปสำหรับพร็อกซี HTTP ที่เลือกบน Wi-Fi เครือข่ายที่จัดการ หรือการเชื่อมต่อส่วนตัวของแอป
| ข้อมูลที่ต้องการ | การกำหนดค่าที่เกี่ยวข้อง |
|---|---|
| บัญชีเข้าถึงข้อมูลของผู้ให้บริการ | การตั้งค่า APN พร้อมข้อจำกัดการเข้าถึงของแพลตฟอร์ม |
| พร็อกซี HTTP ปัจจุบันของเครือข่าย | ConnectivityManager และ ProxyInfo |
| การลงชื่อเข้าใช้ที่พร็อกซีที่เลือกต้องการ | ขั้นตอนการพิสูจน์ตัวตนที่ไคลเอนต์รองรับและแหล่งบัญชีที่ได้รับอนุมัติ |
บนเวอร์ชัน Android ที่รองรับ ConnectivityManager.getDefaultProxy() จะส่งคืนข้อมูลพร็อกซีที่ใช้บังคับ ผลลัพธ์อาจไม่มี ProxyInfo อาจอธิบายปลายทางโดยตรงหรือการกำหนดค่า PAC ดังนั้นตรวจสอบรูปแบบก่อนถือว่าทุกผลลัพธ์เป็นคู่โฮสต์และพอร์ต
ProxyInfo ไม่เปิดเผยคู่ชื่อผู้ใช้/รหัสผ่านแบบสากล หากบริการที่เลือกต้องมีการพิสูจน์ตัวตน ให้รับบัญชีที่ตั้งใจไว้ผ่านการจัดการข้อมูลรับรองที่แอปรองรับ การท้าทายพร็อกซี และการลงชื่อเข้าใช้ของผู้ให้บริการอาจใช้ตัวตนที่ต่างกันโดยสิ้นเชิง
สิ่งนี้ยังแยกการค้นพบออกจากการใช้งาน ซ็อกเก็ตเนทีฟหรือ SDK ที่มีการขนส่งของตัวเองไม่ได้ตระหนักถึงพร็อกซีเพียงเพราะแอปอ่าน ProxyInfo ได้ ส่งเส้นทางที่เลือกให้ไคลเอนต์ที่รองรับโปรโตคอลและวิธีการพิสูจน์ตัวตน
ตัวอย่างเก่าที่สอบถามผู้ให้บริการเนื้อหาโทรศัพท์อธิบายรุ่น Android และสิทธิ์เฉพาะ ตัวอย่างเหล่านั้นเป็นบริบททางประวัติศาสตร์ที่มีประโยชน์ แต่ไม่สามารถเปลี่ยนบัญชี APN ให้เป็นรหัสผ่านที่ขาดหายสำหรับพร็อกซีที่ไม่เกี่ยวข้องได้