Jaringan VPN Android dapat mengiklankan proksi HTTP
Gunakan ProxyInfo langsung dengan VpnService.Builder pada Android API 29 atau lebih baru, dan pahami mengapa PAC URI tidak berfungsi di sana.
Android API 29 memperkenalkan VpnService.Builder.setHttpProxy untuk melampirkan rekomendasi proksi HTTP ke jaringan VPN. Pada layanan VPN yang sudah ada, sebelum antarmuka terkonfigurasinya dibentuk:
builder.setHttpProxy(
ProxyInfo.buildDirectProxy("proxy.example", 8080));
Di sini builder adalah VpnService.Builder milik layanan dan ProxyInfo adalah android.net.ProxyInfo. Berikan host dan port proksi secara terpisah. Fragmen ini menambahkan informasi proksi ke builder yang parameter VPN lainnya sudah dikonfigurasi.
Proksi PAC tidak didukung oleh API ini. Membuat ProxyInfo dari PAC URI tidak menjadikannya konfigurasi proksi VPN yang didukung; gunakan titik akhir proksi HTTP langsung yang dapat dijangkau. Untuk lalu lintas publik yang diizinkan, daftar proksi HTTP menyediakan kandidat host dan port, yang keterjangkauannya harus diperiksa menurut tata letak perutean VPN.
Setelan ini bersifat saran. Aplikasi dapat mengabaikannya, jadi tidak dapat menjamin bahwa setiap koneksi memakai proksi. Dalam tunnel terpisah, aplikasi yang mengikuti rekomendasi juga dapat mencoba mengirim permintaan HTTP ke tujuan di luar VPN melalui proksi tersebut. Aplikasi itu tidak dapat membedakan kedua kelompok rute saat menerapkan informasi proksi. Periksa keterjangkauan perantara menurut tata letak perutean itu sebelum menganggap setelan lengkap.