Kredensial APN Android dan Network ProxyInfo Melayani Tujuan Berbeda
Baca konfigurasi proxy jaringan melalui antarmuka yang didukung Android dan pisahkan kredensial akses operator dari akun proxy HTTP.
Aplikasi Android bisa membutuhkan alamat proxy saat ini tanpa memiliki pengaturan koneksi. Mulailah dari antarmuka proxy jaringan, bukan mencari kolom basis data bernama user atau password.
Konfigurasi APN teleponi menjelaskan akses operator. Kolom akunnya milik konfigurasi tersebut. Kolom itu bukan penyimpanan kredensial umum untuk proxy HTTP yang dipilih di Wi-Fi, jaringan terkelola, atau koneksi privat aplikasi.
| Informasi yang dibutuhkan | Konfigurasi terkait |
|---|---|
| Akun akses data operator | Pengaturan APN, dengan pembatasan akses platform |
| Proxy HTTP jaringan saat ini | ConnectivityManager dan ProxyInfo |
| Login yang diminta proxy terpilih | Alur autentikasi yang didukung klien dan sumber akun yang disetujui |
Pada versi Android yang didukung, ConnectivityManager.getDefaultProxy() mengembalikan informasi proxy yang berlaku. Hasilnya bisa tidak ada. ProxyInfo dapat menjelaskan endpoint langsung atau konfigurasi PAC, jadi periksa bentuknya sebelum memperlakukan setiap hasil sebagai pasangan host dan port.
ProxyInfo tidak menampilkan pasangan nama pengguna/kata sandi universal. Jika layanan yang dipilih memerlukan autentikasi, dapatkan akun yang dimaksud melalui pengaturan kredensial yang didukung aplikasi. Tantangan proxy dan login operator dapat memakai identitas yang sama sekali berbeda.
Ini juga memisahkan penemuan dari penggunaan. Socket native atau SDK dengan transportnya sendiri tidak menjadi sadar-proxy hanya karena aplikasi dapat membaca ProxyInfo. Berikan rute terpilih kepada klien yang mendukung protokol dan metode autentikasinya.
Contoh lama yang menanyakan penyedia konten teleponi menjelaskan rilis dan izin Android tertentu. Itu konteks historis yang berguna, tetapi tidak dapat mengubah akun APN menjadi kata sandi yang hilang untuk proxy yang tidak terkait.