OpenVPN Connect ഒപ്പം Tasker: പ്രൊഫൈൽ ID, പേരല്ല
Android 3.3.2 അല്ലെങ്കിൽ അതിനുശേഷമുള്ള പതിപ്പിൽ OpenVPN Connect പ്രൊഫൈൽ ID സ്വീകരിക്കുന്നു, കാണിക്കുന്ന പേരല്ല. Tasker ന്റെ intent വീണ്ടും നിർമ്മിക്കുകയും അടുത്ത ഘട്ടം യഥാർത്ഥ കണക്ഷൻ അവസ്ഥയെ ആശ്രയിച്ചാക്കുകയും ചെയ്യുക.
മാസങ്ങളോളം വിശ്വസനീയമായി കണക്റ്റ് ചെയ്തിരുന്ന ഓട്ടോമേഷൻ ക്ലയന്റ് അപ്ഡേറ്റിന് ശേഷം പ്രവർത്തിക്കുന്നത് നിർത്തുന്നു, അതേ പ്രൊഫൈൽ കൈകൊണ്ട് ഇപ്പോഴും കണക്റ്റ് ചെയ്യുന്നു. ഈ മാതൃക VPN സെർവറിലേക്കല്ല, നിയന്ത്രണ കരാറിലേക്കാണ് സൂചന നൽകുന്നത്. ആപ്പ് ഏത് പ്രവർത്തനം സ്വീകരിക്കുന്നു അല്ലെങ്കിൽ ഏത് തിരിച്ചറിയൽ കാത്തിരിക്കുന്നു എന്നത് ആരോ മാറ്റി, ടാസ്ക് ഇപ്പോഴും പഴയത് അയക്കുന്നു. ബന്ധം വീണ്ടും നിർമ്മിക്കാൻ സെർവർ വീണ്ടും പരിശോധിക്കുന്നതിനേക്കാൾ കുറഞ്ഞ സമയമേ എടുക്കൂ.
കരാർ ഒരു ആപ്പിന്റേതും ഒരു പതിപ്പ് പരിധിയുടേതുമാണ്
OpenVPN Connect ഉം OpenVPN for Android ഉം വ്യത്യസ്ത ആപ്പുകളാണ്, ഒരു പാക്കേജിനെ പേരിടുന്ന intent മറ്റേതിൽ ഒന്നും ചെയ്യുന്നില്ല. ടാസ്ക് തൊടുന്നതിന് മുൻപ് ഏത് ക്ലയന്റ് ഇൻസ്റ്റാൾ ചെയ്തിട്ടുണ്ട്, നിങ്ങൾ താരതമ്യം ചെയ്യുന്ന സ്വഭാവം ഏത് പതിപ്പ് സൃഷ്ടിച്ചു എന്ന് ഉറപ്പാക്കുക. Android 3.3.2 അല്ലെങ്കിൽ പുതിയ Connect ന്Tasker ന്റെ രേഖപ്പെടുത്തിയ സംയോജനം പ്രൊഫൈൽ ID പ്രതീക്ഷിക്കുന്നു. കാണിക്കുന്ന പേരിന് മുൻപ് AS അല്ലെങ്കിൽ PC ചേർക്കുന്ന പഴയ നിർദ്ദേശങ്ങൾ മുൻ കരാറിനെ വിവരിക്കുന്നു, അവ നിലവിലെ ടാസ്കിലേക്ക് പകർത്തുന്നതാണ് ഒന്നും സംഭവിക്കാത്തതിന്റെ സാധാരണ കാരണം.
ഈ പതിപ്പ് പരിധി മുൻപ് ഇത് പ്രവർത്തിച്ചിരുന്നു എന്ന മിക്ക റിപ്പോർട്ടുകളും വിശദീകരിക്കുന്നു. ആപ്പ് സവിശേഷത തകർത്തില്ല; സവിശേഷത എന്ത് സ്വീകരിക്കുന്നു എന്നത് മാറ്റി. പതിപ്പ് പരിധിയെ നിങ്ങൾ എഴുതുന്ന കരാറിന്റെ ഭാഗമായി കാണുക.
തിരിച്ചറിയൽ എവിടെ നിന്ന് വരുന്നു
Connect നുള്ളിൽ ഉദ്ദേശിച്ച പ്രൊഫൈൽ തുറന്ന് അതിന്റെ പ്രൊഫൈൽ ID പ്രൊഫൈലിന്റെ സ്വന്തം വിശദാംശങ്ങളിൽ നിന്ന് പകർത്തുക. പട്ടികയിൽ നിന്ന് തിരിച്ചറിയുന്ന പേരിന് പകരം ആ മൂല്യം ഉപയോഗിക്കുക, കാരണം പേര് വെറും ലേബലാണ്, തിരിച്ചറിയലാണ് ആപ്പ് ഒത്തുനോക്കുന്നത്. Tasker ലെ Send Intent പ്രവർത്തനത്തിന്റെ കണക്ഷൻ ഫീൽഡുകൾ താഴെയുള്ള ബ്ലോക്ക് പോലെ കാണാം, തിരിച്ചറിയൽ മാത്രം മാറ്റിയിരിക്കുന്നു. വ്യക്തിഗത അല്ലെങ്കിൽ ജോലി പ്രൊഫൈലിന്റെ ആപ്പ് പകർപ്പും സ്ഥിരതയോടെ സൂക്ഷിക്കുക.
Action: net.openvpn.openvpn.CONNECT
Extra: net.openvpn.openvpn.AUTOSTART_PROFILE_ID:'PROFILE_ID'
Extra: net.openvpn.openvpn.AUTOCONNECT:true
Package: net.openvpn.openvpn
Class: net.openvpn.unified.MainActivity
Target: Activity
ജോലി പ്രൊഫൈലിലുള്ള ഒരു പകർപ്പിന് അതേ പാക്കേജ് പേരും വേറെ സൂക്ഷിച്ച പ്രൊഫൈലും ഉണ്ടെങ്കിൽ intent സ്വീകരിക്കും, ഒത്തുപോകുന്ന പ്രൊഫൈൽ കണ്ടെത്തുകയുമില്ല, ഇത് പരിധിയുടെ പിഴവല്ല, തകർന്ന ടാസ്ക് പോലെ തോന്നും. പ്രൊഫൈൽ വീണ്ടും ഇറക്കുമതി ചെയ്യുകയോ മാറ്റുകയോ ചെയ്താൽ തിരിച്ചറിയലിനെ സംശയാസ്പദമായി കണക്കാക്കി വീണ്ടും പരിശോധിക്കുക. വീണ്ടും ഇറക്കുമതി ചെയ്യുമ്പോൾ കാണിക്കുന്ന പേര് മാറുന്നില്ലെങ്കിലും പുതിയ പ്രൊഫൈൽ എൻട്രി ഉണ്ടാകാറുണ്ട്. മറ്റെന്തെങ്കിലും മാറ്റുന്നതിന് മുൻപ് തിരിച്ചറിയൽ പരിശോധിക്കുക.
ബന്ധമില്ലാത്ത ഫീൽഡുകൾ രേഖപ്പെടുത്തിയതുപോലെ ശൂന്യമായി വിടുക. വിഭാഗം, MIME തരം, ഗൈഡ് ആവശ്യപ്പെടാത്ത ഡാറ്റ ഫീൽഡുകൾ എന്നിവ Android എങ്ങനെ intent പരിഹരിക്കുന്നു എന്നത് മാറ്റിയേക്കാം, വേറെ രീതിയിൽ പരിഹരിക്കപ്പെടുന്ന intent നിങ്ങളുടെ പ്രൊഫൈൽ തുടങ്ങാതെ ആപ്പ് തുറക്കാം.
പ്രവർത്തനം എന്ത് ചെയ്യുന്നു, നിങ്ങൾക്ക് എന്ത് അവശേഷിപ്പിക്കുന്നു
കണക്ഷൻ intent അയക്കുന്നത് ആപ്പിനോട് ഒരു പ്രൊഫൈൽ തുടങ്ങാൻ ആവശ്യപ്പെടുന്നു. ആ പ്രൊഫൈൽ ആവശ്യപ്പെടുന്ന അനുമതിയെ അത് ഒഴിവാക്കുന്നില്ല. Connect ഇപ്പോഴും ഒരു അഭ്യർത്ഥന കാണിച്ചേക്കാം, അതുകൊണ്ടാണ് രേഖപ്പെടുത്തിയ സ്വയംഭരണ സാഹചര്യം അധിക അനുമതിയും സൂക്ഷിച്ച കണക്ഷൻ ക്രെഡൻഷ്യലുകളും ഇല്ലെന്ന് അനുമാനിക്കുന്നത്. പ്രലോഭനം ഈ പരിധി നീക്കം ചെയ്യുകയാണ്, പാസ്വേഡുകളോ സ്വകാര്യ കീയുടെ രഹസ്യങ്ങളോ പങ്കിട്ട Tasker എക്സ്പോർട്ടിൽ ഉൾപ്പെടുത്തി.
അത് ചെയ്യരുത്. ടാസ്ക് എക്സ്പോർട്ട് ഒരു ടെക്സ്റ്റ് ഫയലാണ്, ആളുകൾ അത് ചാറ്റ് ത്രെഡുകളിലേക്ക് പകർത്തുന്നു, അതിൽ വെക്കുന്ന രഹസ്യങ്ങൾ അത് പങ്കിടുന്ന നിമിഷം വെളിപ്പെടുന്നു. പ്രൊഫൈലിന് ആവശ്യമെങ്കിൽ ആപ്പിന്റെ സ്വന്തം സൂക്ഷിച്ച കണക്ഷൻ ക്രെഡൻഷ്യലുകൾ ഉപയോഗിക്കുക, MFA അഭ്യർത്ഥനകൾ അഭ്യർത്ഥനകളായി തുടരട്ടെ. ഉത്തരം സൂക്ഷിച്ച് അഭ്യർത്ഥന ഒഴിവാക്കുന്ന ഏതും പ്രശ്നം പരിഹരിക്കുന്നതിന് പകരം രഹസ്യം മാറ്റി.
വിച്ഛേദത്തിന്റെ വശത്തിന് സ്വന്തം രേഖപ്പെടുത്തിയ പ്രവർത്തനമുണ്ട്, അത് ക്ലയന്റിനെതിരായ ഒരു തന്ത്രമല്ല:
Action: net.openvpn.openvpn.DISCONNECT
Extra: net.openvpn.openvpn.STOP:true
Package: net.openvpn.openvpn
Class: net.openvpn.unified.MainActivity
Target: Activity
വിച്ഛേദം നിർബന്ധമാക്കാൻ ബോധപൂർവം നിലവിലില്ലാത്ത പ്രൊഫൈലിലേക്ക് കണക്റ്റ് ചെയ്യുന്നത് പഴയ ത്രെഡുകളിൽ കാണുന്ന, പിന്നീട് അപ്ഡേറ്റിന് ശേഷം നിശ്ശബ്ദമായി പരാജയപ്പെടുന്ന ഒരു പരിഹാരമാണ്. വ്യക്തമായ പ്രവർത്തനം ഉപയോഗിക്കുക.
അടുത്ത ഘട്ടം പ്രവർത്തിക്കുന്നതിന് മുൻപ് അവസ്ഥ പരിശോധിക്കുക
intent വിജയകരമായി തുടങ്ങുന്നത് അഭ്യർത്ഥന എത്തി എന്ന് തെളിയിക്കുന്നു, ഒരു തുരങ്കം ഉണ്ട് എന്നല്ല. ടാസ്ക് പിന്നീട് ഒരു ആന്തരിക ആപ്പ് തുറക്കുന്നുവെങ്കിൽ,ആ ഘട്ടത്തിന് പരിമിതമായ സമയപരിധിയോടെയുള്ള സന്നദ്ധതാ വ്യവസ്ഥ വേണം. അയച്ചയുടനെയുള്ള പ്രവർത്തനം ഒടുവിൽ ഒരു അഭ്യർത്ഥനയിൽ തട്ടും.
$ adb shell cmd package resolve-activity --brief net.openvpn.openvpn
net.openvpn.openvpn/net.openvpn.unified.MainActivity
$ adb shell dumpsys activity activities | grep -i openvpn
resolve ചോദ്യം നിങ്ങൾ ലക്ഷ്യമിടുന്ന പാക്കേജും പ്രവർത്തനവും ആ ഉപകരണത്തിൽ ഉണ്ടെന്ന് ഉറപ്പാക്കുന്നു, ഇത് ക്ലാസ് ഫീൽഡിലെ ടൈപ്പിംഗ് പിഴവ് ഒഴിവാക്കുന്നു. പ്രവർത്തന ഡംപ് നിങ്ങളുടെ ടാസ്ക് പ്രവർത്തിച്ചതിന് ശേഷം യഥാർത്ഥത്തിൽ മുൻപിൽ എന്തുണ്ടെന്ന് കാണിക്കുന്നു, ആപ്പ് കണക്റ്റ് ചെയ്യുന്നതിന് പകരം ഒരു അഭ്യർത്ഥന തുറന്നോ എന്ന് കാണാനുള്ള ഏറ്റവും വിലകുറഞ്ഞ വഴിയാണത്. പരാജയപ്പെട്ട ടാസ്കിന് ശേഷം രണ്ടും പ്രവർത്തിപ്പിക്കുക, ഏത് ഫീൽഡാണ് തെറ്റെന്ന് ഊഹിക്കുന്നതിന് പകരം. ക്ലാസിന്റെ പേരിലുള്ള വ്യത്യാസം ഉടനടി പിശക് നൽകുന്നു, എന്നാൽ കാണാത്ത പ്രൊഫൈൽ കാണാവുന്ന പിശകൊന്നും നൽകുന്നില്ല.
ടാസ്ക് അയക്കുന്നതിന് മുൻപ് വിച്ഛേദത്തിന്റെ ഉടമസ്ഥത തീരുമാനിക്കുക. മറ്റൊരു ജോലി ടാസ്ക് ആശ്രയിക്കുന്ന തുരങ്കം വീഴ്ത്തുന്ന കുറുക്കുവഴി അതിന്റെ കാരണവുമായി ഒട്ടും സാമ്യമില്ലാത്ത ഒരു പിന്തുണ ടിക്കറ്റ് സൃഷ്ടിക്കും. ഒരേ ക്ലയന്റ് നിയന്ത്രിക്കുന്ന രണ്ട് ഓട്ടോമേഷനുകൾ സൂക്ഷിക്കുന്നത് ലോഗുകളിൽ നിന്ന് പരിഹരിക്കാനാകാത്ത ഒരു മത്സരം സൃഷ്ടിക്കുന്നു, അതിനാൽ പുതിയത് പ്രവർത്തിക്കാൻ തുടങ്ങുമ്പോൾ പഴയ പ്രവർത്തനം ഇല്ലാതാക്കുക.