Android APN-legitimasjon og Network ProxyInfo tjener ulike formål
Les nettverksproxykonfigurasjonen gjennom Androids støttede grensesnitt, og hold operatørens tilgangslegitimasjon atskilt fra en HTTP-proxykonto.
En Android-app kan trenge gjeldende proxyadresse uten å eie tilkoblingsinnstillingene. Start med nettverksproxygrensesnittet i stedet for å lete etter en databasekolonne kalt user eller password.
Telefoni-APN-konfigurasjonen beskriver operatørtilgang. Kontofeltene tilhører denne konfigurasjonen. De er ikke et generelt lager for legitimasjon til HTTP-proxyen som er valgt på Wi-Fi, i et administrert nettverk eller i en apps private tilkobling.
| Nødvendig informasjon | Relevant konfigurasjon |
|---|---|
| Operatørens dataadgangskonto | APN-innstillinger, med plattformens tilgangsbegrensninger |
| Gjeldende nettverks-HTTP-proxy | ConnectivityManager og ProxyInfo |
| Pålogging som en valgt proxy krever | Klientens støttede autentiseringsflyt og den godkjente kontokilden |
På en støttet Android-versjon returnerer ConnectivityManager.getDefaultProxy() gjeldende proxyinformasjon. Resultatet kan mangle. En ProxyInfo kan beskrive et direkte endepunkt eller en PAC-konfigurasjon, så undersøk formen før du behandler ethvert resultat som et verts- og portpar.
ProxyInfo eksponerer ikke et universelt brukernavn/passord-par. Hvis tjenesten du valgte krever autentisering, skaff den tiltenkte kontoen gjennom appens støttede legitimasjonsordning. En proxyutfordring og en operatørpålogging kan bruke helt forskjellige identiteter.
Dette skiller også oppdagelse fra bruk. En innebygd socket eller et SDK med egen transport blir ikke proxybevisst bare fordi appen kan lese ProxyInfo. Gi den valgte ruten til en klient som støtter protokollen og autentiseringsmetoden.
Eldre eksempler som spør en telefoniinnholdsleverandør, beskriver bestemte Android-versjoner og tillatelser. De er nyttig historisk kontekst, men de kan ikke gjøre en APN-konto om til det manglende passordet for en urelatert proxy.