O aplicație Android poate avea nevoie de adresa proxy curentă fără să dețină setările de conexiune. Începeți cu interfața de proxy de rețea în loc să căutați o coloană de bază de date numită user sau password.

Configurația APN de telefonie descrie accesul operatorului. Câmpurile ei de cont aparțin acelei configurații. Ele nu sunt un depozit general de acreditări pentru proxy-ul HTTP selectat în Wi-Fi, într-o rețea administrată sau într-o conexiune privată a unei aplicații.

Informație necesarăConfigurație relevantă
Contul de acces la date al operatoruluiSetări APN, cu restricțiile de acces ale platformei
Proxy-ul HTTP curent al rețeleiConnectivityManager și ProxyInfo
Autentificarea cerută de un proxy selectatFluxul de autentificare acceptat de client și sursa de cont aprobată

Pe o versiune Android acceptată, ConnectivityManager.getDefaultProxy() returnează informațiile proxy aplicabile. Rezultatul poate lipsi. Un ProxyInfo poate descrie un punct final direct sau o configurație PAC, așa că inspectați forma înainte de a trata fiecare rezultat ca pereche gaz și port.

ProxyInfo nu expune o pereche universală utilizator/parolă. Dacă serviciul ales cere autentificare, obțineți contul dorit prin aranjamentul de acreditări acceptat de aplicație. O provocare de proxy și o autentificare la operator pot folosi identități complet diferite.

Aceasta separă și descoperirea de utilizare. Un socket nativ sau un SDK cu transport propriu nu devine conștient de proxy doar pentru că aplicația poate citi ProxyInfo. Dați ruta selectată unui client care acceptă protocolul și metoda lui de autentificare.

Exemplele mai vechi care interoghează un furnizor de conținut de telefonie descriu versiuni și permisiuni Android specifice. Sunt un context istoric util, dar nu pot transforma un cont APN în parola lipsă pentru un proxy nelegat.

Articole similare