আপনি VPN অনুমোদন বোতামে ট্যাপ করেন কিন্তু ডায়ালগ সাড়া দেয় না। স্বাভাবিক সিদ্ধান্ত হলো অ্যাপ বা সার্ভার নষ্ট, তাই মানুষ পাসওয়ার্ড রিসেট করে, DNS বদলায় বা ক্লায়েন্ট পুনরায় ইনস্টল করে। সাধারণত এর কোনোটিই ত্রুটিটি স্পর্শ করে না, কারণ Android বাধার মধ্য দিয়ে আসা ট্যাপ বাদ দেয়, আর VPN অনুমোদন স্ক্রিনটি ঠিক এমন সংবেদনশীল সম্মতি ডায়ালগ। ট্যাপটি কখনো বোতামে পৌঁছায় না।

সুরক্ষাটি আসলে কী প্রত্যাখ্যান করে

Android সংবেদনশীল মিথস্ক্রিয়াকে ট্যাপজ্যাকিং থেকে রক্ষা করে, যেখানে অন্য একটি উইন্ডো ডায়ালগের উপরে বসে ট্যাপ চুরি করে বা অস্পষ্ট করে। একটি ভিউ View.setFilterTouchesWhenObscured দিয়ে যোগ দেয়, এবং অন্য উইন্ডো আংশিক বা সম্পূর্ণ আবৃতকারী হিসেবে চিহ্নিত হলে ইভেন্টটি MotionEvent.FLAG_WINDOW_IS_OBSCURED নিয়ে আসে। তখন ইভেন্টটি ভুল জায়গায় পাঠানোর বদলে বাদ দেওয়া হয়। Android 12 (API 31) একই সুরক্ষা সিস্টেম সম্মতি পৃষ্ঠে অবিশ্বস্ত ট্যাপ ব্লক করে বাড়িয়েছে, তাই অনুমোদন ডায়ালগ এমন একটি ওভারলে থেকে ট্যাপ প্রত্যাখ্যান করতে পারে যা অন্য অ্যাপ এখনো গ্রহণ করত।

তিনটি জিনিস নিয়মিত বাধা তৈরি করে: অন্য অ্যাপের উপরে দেখানোর অনুমতি থাকা অ্যাপ, কনটেন্ট আঁকা অ্যাক্সেসিবিলিটি সার্ভিস, এবং স্ক্রিন রেকর্ডার বা ফিল্টার টুলের ভাসমান উইজেট। কিছু নির্মাতার ডিসপ্লে বৈশিষ্ট্য নিজের স্তর যোগ করে, তাই একই Android সংস্করণের দুই ফোনে একই ডায়ালগ ভিন্নভাবে আচরণ করতে পারে। আংশিকভাবে আবৃত উইন্ডো FLAG_WINDOW_IS_PARTIALLY_OBSCURED সেট করে এবং বোতামটি দেখার আগেই ট্যাপ বাদ পড়ে। এটি স্ক্রিনের বৈশিষ্ট্য, নেটওয়ার্কের নয়। ট্যাপ বাদ পড়ার মুহূর্তে VPN সার্ভারে কিছু পাঠানো হয়নি, তাই সার্ভারের দিকের কোনো পরিবর্তন ফলাফলে প্রভাব ফেলতে পারে না।

মৃত ট্যাপকে ব্যর্থ সংযোগ থেকে আলাদা করুন

পার্থক্যটাই পুরো রোগনির্ণয় এবং এতে দশ সেকেন্ড লাগে। ট্যাপ উপেক্ষিত হয়ে ডায়ালগ যদি আগের মতোই থাকে, বাধাটি স্থানীয়। ডায়ালগ বন্ধ হয়ে পরে ত্রুটি দেখালে সম্মতি গৃহীত হয়েছে এবং আপনি অ্যাপের নিজস্ব ইভেন্ট তথ্য দরকার এমন অন্য ধাপে গেছেন।

স্থানীয় পাঠ নিশ্চিত করতে অনুরোধকারী অ্যাপ সংযোগের চেষ্টা করেছিল কি না দেখুন। সম্মতি ডায়ালগ স্ক্রিনে থাকার সময় কখনো হ্যান্ডশেক চেষ্টা না লেখা ক্লায়েন্ট নেটওয়ার্কে পৌঁছায়নি।

adb shell cmd appops get com.example.vpn SYSTEM_ALERT_WINDOW
adb shell settings get secure enabled_accessibility_services

ওভারলে অনুমতি কে রাখছে এবং কোন অ্যাক্সেসিবিলিটি সার্ভিস চালু আছে তালিকা করুন, তারপর চলমানগুলোর সঙ্গে মিলিয়ে দেখুন। প্ল্যাটফর্মের সুরক্ষা নিজে বন্ধ করবেন না; লুকানো উইন্ডো যাতে আপনার হয়ে সম্মতি ডায়ালগের উত্তর না দেয় সেটিই তা করে।

বাধা সরান, তারপর স্বাভাবিক প্রবাহ আবার চেষ্টা করুন

প্রথমে কোন অ্যাপ VPN অনুমোদন চেয়েছিল চিহ্নিত করুন, যাতে আপনি কী সম্মতি দিচ্ছেন জানেন। তারপর পরে লাগতে পারে এমন বিস্তৃত অনুমতি প্রত্যাহার না করে ওই নির্দিষ্ট ওভারলে নিজের সেটিং থেকে বন্ধ করুন। স্ক্রিন ফিল্টারের সাধারণত নিজের অ্যাপে টগল থাকে; ভাসমান উইজেটের বন্ধ করার নিয়ন্ত্রণ থাকে; নির্মাতার ডিসপ্লে মোডের ডিসপ্লে সেটিংসে সুইচ থাকে।

এরপর VPN অ্যাপে ফিরে আবার অনুমোদন চান, যাতে ডায়ালগ নতুন করে তৈরি হয়। এখন ট্যাপ কাজ করলে ওভারলের সামঞ্জস্য আচরণ সমন্বয় করুন বা সংযোগ করার সময় বন্ধ রাখুন, আর স্পর্শ সুরক্ষা চালু রাখুন।

কোন উইন্ডো দায়ী তা বলতে না পারলে একটি একটি করে সরান এবং প্রতিটি পরিবর্তনের পরে সম্মতি ডায়ালগ চেষ্টা করুন। রেকর্ডারের নিয়ন্ত্রণ বার বা ভাসমান শর্টকাট সাধারণত দোষী, আর কাজ করার ঠিক আগে যা সরিয়েছেন সেটিই উত্তর।

পথে বন্ধ করা অসম্পর্কিত সবকিছু ফিরিয়ে আনুন। স্ক্রিন ফিল্টার বা নাইট মোড শত্রু নয়; ডায়ালগের সঙ্গে ওভারল্যাপ করা নির্দিষ্ট উইন্ডোটিই শত্রু।

ডায়ালগ পার হতে কী করবেন না

অচেনা অ্যাপকে বোতাম চাপার জন্য অ্যাক্সেসিবিলিটি প্রবেশ দেবেন না, আর তার জন্য সহায়ক অ্যাপ ইনস্টল করবেন না। এটি সুরক্ষা যা নিষেধ করতে তৈরি তা-ই VPN অনুমোদন দেওয়া স্ক্রিনে দেয়।

ইনপুট টুল দিয়ে ডায়ালগ স্বয়ংক্রিয় করবেন না। এটি ক্ষতিকর ওভারলের মতোই ফল দেয় এবং কারণ সম্পর্কে কিছু শেখায় না।

পরিচালিত ডিভাইসে VPN পরিবর্তন নিয়ন্ত্রণ করা নীতি প্রশাসকের সিদ্ধান্ত। ওভারলে পরীক্ষা তা এড়ানোর অনুমতি নয়। একইভাবে সাড়াহীন অনুমোদন বোতাম সার্টিফিকেট যাচাই দুর্বল করা বা অ্যাকাউন্ট তথ্য বদলানোর কারণ নয়: দুটির কোনোটিই স্থানীয় স্পর্শ বাধা সরায় না।

এখনো ব্যর্থ হলে সঠিক আচরণ জানান

সিদ্ধান্ত নয়, ডায়ালগ বর্ণনা করুন: কোন অ্যাপ অনুমোদন চেয়েছিল, ডায়ালগ খোলা ছিল না বন্ধ হয়েছে, অজানা উৎস বা অ্যাক্সেসিবিলিটি সতর্কবার্তার মতো অন্য সংবেদনশীল অনুরোধও ট্যাপ উপেক্ষা করে কি না, ডিভাইস মডেল ও Android সংস্করণ, এবং আপনি সংগ্রহ করা ওভারলে ও অ্যাক্সেসিবিলিটি তালিকা।

সেখানে থাকতে সহায়তার মালিককে আরেকটি প্রশ্ন করুন: ডিভাইস নীতি VPN কনফিগারেশন পরিবর্তন সীমাবদ্ধ করে কি না। পরিচালিত ব্লক উপেক্ষিত ট্যাপের চেয়ে আলাদা দেখায়, আর কোনটি দেখছেন জানলে দ্বিতীয় রাউন্ড বাঁচে।

এই সেটটি আবৃত স্পর্শ সমস্যাকে নষ্ট ইনপুট ডিভাইস, জমে যাওয়া ডায়ালগ বা নীতি ব্লক থেকে আলাদা করে। পরের ব্যক্তিকে স্ক্রিনে না নেটওয়ার্কে তাকাতে হবে তাও বলে।

Android-এর ট্যাপজ্যাকিং নির্দেশনা আবৃত উইন্ডোর শর্ত ও এই আচরণের পেছনের API কভার করে। প্রমাণের সূত্র চাইলে বোতামে কখনো না পৌঁছানো ইভেন্টে FLAG_WINDOW_IS_OBSCURED ও FLAG_WINDOW_IS_PARTIALLY_OBSCURED খুঁজুন। খোলা থাকা ডায়ালগটিই ধরা উচিত, কারণ এটি দেখায় ট্যাপ অন্য উইন্ডোতে না গিয়ে আটকে দেওয়া হয়েছে।

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