MójDroid.pl

Poradnik: Tasker + Locale execute plugin = (automatyczna) emulacja wciskania przycisków

2011-01-30
|
Damian P.

Niedawno próbowałem zmusić Taskera, aby ten automatycznie wpisywał odpowiednie numery na klawiaturze - nie ważne po co. Nie było to łatwe zadanie, bo Tasker standardowo pozwala tylko na uruchamianie aplikacji i ew. zmianę dźwięku czy orientacji ekranu. Najwidoczniej nie tylko ja szukałem rozwiązania, bo na groups.google.com pojawił się post, w którym autor informuje jak "emulować" przyciski. Chyba nie muszę mówić, jakie to daje pole do popisu?! Dzięki wykorzystaniu praw ROOTa i aplikacji "Locale execute plugin", Tasker może automatycznie wciskać wybrane klawisze, w tym litery jak i sprzętowe "menu" czy "back". Pytacie się: "Po co?". Przykładowo do automatycznego wpisywania PINu, wybierania lokalizacji w nawigacji i wielu innych czynności, w których "klikamy" bardzo dużo (lub gdy nam się nie chce).

Konfiguracja:

0. Instalujemy Taskera i Locale execute plugin (darmowe). 1. Uruchamiamy Tasker, a w nim sekcję "Plugins" i "execute" na którymś z pluginów. Edytujemy go. 2. Teraz... należy wpisać to, co Tasker ma za nas wcisnąć. Mamy na to dwa sposoby:
  • Wpisując "!input keyevent <event_code>". Za <event_code> wstawiamy przyciski z listy poniżej:0 -->  "KEYCODE_UNKNOWN" 1 -->  "KEYCODE_MENU" 2 -->  "KEYCODE_SOFT_RIGHT" 3 -->  "KEYCODE_HOME" 4 -->  "KEYCODE_BACK" 5 -->  "KEYCODE_CALL" 6 -->  "KEYCODE_ENDCALL" 7 -->  "KEYCODE_0" 8 -->  "KEYCODE_1" 9 -->  "KEYCODE_2" 10 -->  "KEYCODE_3" 11 -->  "KEYCODE_4" 12 -->  "KEYCODE_5" 13 -->  "KEYCODE_6" 14 -->  "KEYCODE_7" 15 -->  "KEYCODE_8" 16 -->  "KEYCODE_9" 17 -->  "KEYCODE_STAR" 18 -->  "KEYCODE_POUND" 19 -->  "KEYCODE_DPAD_UP" 20 -->  "KEYCODE_DPAD_DOWN" 21 -->  "KEYCODE_DPAD_LEFT" 22 -->  "KEYCODE_DPAD_RIGHT" 23 -->  "KEYCODE_DPAD_CENTER" 24 -->  "KEYCODE_VOLUME_UP" 25 -->  "KEYCODE_VOLUME_DOWN" 26 -->  "KEYCODE_POWER" 27 -->  "KEYCODE_CAMERA" 28 -->  "KEYCODE_CLEAR" 29 -->  "KEYCODE_A" 30 -->  "KEYCODE_B" 31 -->  "KEYCODE_C" 32 -->  "KEYCODE_D" 33 -->  "KEYCODE_E" 34 -->  "KEYCODE_F" 35 -->  "KEYCODE_G" 36 -->  "KEYCODE_H" 37 -->  "KEYCODE_I" 38 -->  "KEYCODE_J" 39 -->  "KEYCODE_K" 40 -->  "KEYCODE_L" 41 -->  "KEYCODE_M" 42 -->  "KEYCODE_N" 43 -->  "KEYCODE_O" 44 -->  "KEYCODE_P" 45 -->  "KEYCODE_Q" 46 -->  "KEYCODE_R" 47 -->  "KEYCODE_S" 48 -->  "KEYCODE_T" 49 -->  "KEYCODE_U" 50 -->  "KEYCODE_V" 51 -->  "KEYCODE_W" 52 -->  "KEYCODE_X" 53 -->  "KEYCODE_Y" 54 -->  "KEYCODE_Z" 55 -->  "KEYCODE_COMMA" 56 -->  "KEYCODE_PERIOD" 57 -->  "KEYCODE_ALT_LEFT" 58 -->  "KEYCODE_ALT_RIGHT" 59 -->  "KEYCODE_SHIFT_LEFT" 60 -->  "KEYCODE_SHIFT_RIGHT" 61 -->  "KEYCODE_TAB" 62 -->  "KEYCODE_SPACE" 63 -->  "KEYCODE_SYM" 64 -->  "KEYCODE_EXPLORER" 65 -->  "KEYCODE_ENVELOPE" 66 -->  "KEYCODE_ENTER" 67 -->  "KEYCODE_DEL" 68 -->  "KEYCODE_GRAVE" 69 -->  "KEYCODE_MINUS" 70 -->  "KEYCODE_EQUALS" 71 -->  "KEYCODE_LEFT_BRACKET" 72 -->  "KEYCODE_RIGHT_BRACKET" 73 -->  "KEYCODE_BACKSLASH" 74 -->  "KEYCODE_SEMICOLON" 75 -->  "KEYCODE_APOSTROPHE" 76 -->  "KEYCODE_SLASH" 77 -->  "KEYCODE_AT" 78 -->  "KEYCODE_NUM" 79 -->  "KEYCODE_HEADSETHOOK" 80 -->  "KEYCODE_FOCUS" 81 -->  "KEYCODE_PLUS" 82 -->  "KEYCODE_MENU" 83 -->  "KEYCODE_NOTIFICATION" 84 -->  "KEYCODE_SEARCH" 85 -->  "TAG_LAST_KEYCODE" Jest tego trochę - i dobrze. Zatem, jeżeli chcemy aby Tasker wybrał np. liczbę 4, musimy podać mu komendę "!input keyevent 11". Proste.
  • Drugi sposób jest mniej efektywny ale prostszy. Pozwala wykorzystać sam tekst, bez przycisków. Komenda to "!input text <string>", gdzie za <string> wpisujemy to, co Tasker ma wywołać. Np. po wpisaniu "!input text QWERTY", Tasker wywoła w aplikacji tekst: QWERTY.
Można uruchamiać kilkanaście komend na raz. Wystarczy tylko umieszczać je w osobnych liniach (klikając enter). "!" przez komendami jest wymagane, ponieważ jest to odwołanie do praw ROOT'a! To wszystko.