WebView proxy geçersiz kılmasına bağlı gezinme, geçersiz kılmanın tamamlanma dinleyicisi çalıştıktan sonra başlamalıdır. Onu ayarlayıp hemen bir sayfa yüklemek, işlemi eşzamansız bir güncellemeyle yarışta bırakır.

  1. WebViewFeature.isFeatureSupported(WebViewFeature.PROXY_OVERRIDE) denetleyin. Destek, WebView uygulamasına ve AndroidX WebKit kitaplığına olduğu kadar Android'in API düzeyine de bağlıdır. Bulunmadığında ne olacağını tanımlayın; sessizce doğrudan bağlanmak özelliği boşa çıkarabilir.
  2. İstenen ProxyConfig öğesini belgelenmiş proxy kuralları, uç nokta söz dizimi ve atlama davranışıyla oluşturun. İzin verilen genel site gezinmesi için ücretsiz proxy listesinden protokolü o WebView uygulamasının desteklediği bir kuralla eşleşen bir aday seçin. PAC URL'si, SOCKS URI'si ve çıplak ana bilgisayar farklı girdilerdir.
  3. ProxyController.setProxyOverride() öğesini o yapılandırmayla, bir yürütücüyle ve bir tamamlanma dinleyicisiyle çağırın. Bağımlı gezinmeye tamamlanma yolundan başlayın.
  4. Geçici geçersiz kılma sona erdiğinde clearProxyOverride() ile temizleyin ve eşzamansız tamamlanmasını da işleyin.

Bu yaşam döngüsüne tek bir sahip verin. Ayar, uygulama sürecindeki tüm WebView'lar için geçerlidir; tekrar tekrar değiştirmek, aynı anda var olan iki görünüme bağımsız çıkışlar sağlayamaz. Diğer süreçlerin ve HTTP kitaplıklarının kendi yolları vardır.

Bu desteklenen arabirim, Android sürümleri arasında değişen özel proxy değişikliği dinleyicilerine bağımlı olmaktan kaçınır. Yönlendirmeyi seçer; proxy kimlik bilgileri ve sertifika güveni hâlâ desteklenen mekanizmalarını kullanır. Seçimden sonraki bir kimlik doğrulama veya TLS hatası o aşamada teşhis edilmelidir.

İlgili makaleler