WebView প্রক্সি ওভাররাইডের উপর নির্ভরশীল নেভিগেশন ওভাররাইডের কমপ্লিশন লিসেনার চালু হওয়ার পরে শুরু হওয়া উচিত। এটি সেট করে সঙ্গে সঙ্গে পৃষ্ঠা লোড করলে কাজটি একটি অ্যাসিঙ্ক্রোনাস আপডেটের সঙ্গে প্রতিযোগিতায় পড়ে।

  1. WebViewFeature.isFeatureSupported(WebViewFeature.PROXY_OVERRIDE) যাচাই করুন। সমর্থন WebView বাস্তবায়ন ও AndroidX WebKit লাইব্রেরির পাশাপাশি Android-এর API স্তরের উপর নির্ভর করে। এটি অনুপস্থিত থাকলে কী হবে তা নির্ধারণ করুন; নিঃশব্দে সরাসরি যাওয়া ফিচারটিকে ব্যর্থ করতে পারে।
  2. এর নথিভুক্ত প্রক্সি নিয়ম, এন্ডপয়েন্ট সিনট্যাক্স ও বাইপাস আচরণ ব্যবহার করে কাঙ্ক্ষিত ProxyConfig তৈরি করুন। অনুমোদিত পাবলিক সাইট নেভিগেশনের জন্য ফ্রি প্রক্সি তালিকা থেকে এমন প্রার্থী বেছে নিন যার প্রোটোকল ওই WebView বাস্তবায়ন সমর্থিত নিয়মের সঙ্গে মেলে। PAC URL, SOCKS URI ও খালি হোস্ট ভিন্ন ভিন্ন ইনপুট।
  3. সেই কনফিগারেশন, একটি এক্সিকিউটর ও একটি কমপ্লিশন লিসেনার দিয়ে ProxyController.setProxyOverride() কল করুন। কমপ্লিশন পথ থেকে নির্ভরশীল নেভিগেশন শুরু করুন।
  4. অস্থায়ী ওভাররাইড শেষ হলে clearProxyOverride() দিয়ে তা পরিষ্কার করুন এবং এর অ্যাসিঙ্ক্রোনাস কমপ্লিশনও সামলান।

এই জীবনচক্রকে একজন মালিক দিন। সেটিংটি অ্যাপ্লিকেশন প্রসেসের সব WebView-তে প্রযোজ্য; বারবার তা বদলে দুইটি একসঙ্গে থাকা ভিউকে স্বতন্ত্র প্রস্থান দেওয়া যায় না। অন্য প্রসেস ও HTTP লাইব্রেরির নিজেদের রুট আছে।

এই সমর্থিত ইন্টারফেস Android সংস্করণের মধ্যে ভিন্ন হয় এমন ব্যক্তিগত প্রক্সি-পরিবর্তন লিসেনারের উপর নির্ভরতা এড়ায়। এটি রাউটিং বেছে নেয়; প্রক্সি শংসাপত্র ও সার্টিফিকেট বিশ্বাস এখনও তাদের সমর্থিত ব্যবস্থা ব্যবহার করে। নির্বাচনের পরে প্রমাণীকরণ বা TLS ব্যর্থতা সেই পর্যায়ে নির্ণয় করতে হবে।

সম্পর্কিত নিবন্ধ