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 сурамы максат кылган пакет менен ишмердүүлүктүн ошол түзмөктө бар экенин ырастайт, бул класс талаасындагы теруу катасын жокко чыгарат. Ишмердүүлүктүн чыгарылышы тапшырмаңыз аткарылгандан кийин чындыгында эмне алдыңкы планда экенин көрсөтөт жана колдонмонун туташуунун ордуна сурам ачканын көрүүнүн эң арзан жолу. Ийгиликсиз тапшырмадан кийин кайсы талаа туура эмес экенин болжолдоонун ордуна экөөнү тең иштетиңиз. Класс атындагы дал келбестик дароо ката берет, ал эми жок профиль эч кандай көрүнүүчү ката бербейт.
Тапшырманы жөнөтүүдөн мурун ажыратуунун ээлигин чечиңиз. Башка иш тапшырмасы көз каранды болгон туннелди кулатуучу кыска жол себебине такыр окшобогон колдоо билетин жаратат. Бир кардарды башкарган эки автоматташтырууну кармоо журналдардан жоё албаган жарыш жаратат, ошондуктан жаңысы иштегенде эскирген аракетти жок кылыңыз.