Aby cel został osiągnięty dokładnie, musimy zainstalować Xposed Additions Pro i Tasker , przy czym ten pierwszy wymaga dostępu do katalogu głównego i zainstalowanego Xposed Framework (stabilna wersja).
Po zainstalowaniu dodatków Xposed zostaniesz poproszony o aktywację jego modułu w Xposed Framework. Aktywuj to.
Będziemy wykorzystywać zdolność Xposed Dodawanie do przechwytywania naciśnięcia klawisza i zapewni warunek i akcję do wykonania dla tego naciśnięcia klawisza. Użyjemy Taskera, aby obejść ograniczony zestaw opcji Xposed Addition.
Uwaga : wszystkie sekcje przetestowane na Androidzie 4.4.2 i 5.0.2.
Instrukcje dotyczące dodatków Xposed
- Uruchom dodatki Xposed → dotknij Przyciski
- Tap Dodaj nowy klucz
- Naciśnij przycisk urządzenia, aby być używany jako klawiatura jest ↑ kluczem
- Wybrałem Volume Up / + przycisk
- Stuknij pozycję wybranego wcześniej przycisku
- Stuknij Dodaj nowy warunek
- Stuknij Załaduj listę aplikacji
- Wybierz aplikację, w której chcesz zwiększyć głośność , aby symulować ↑ klawisz klawiatury
- Stuknij pozycję poprzednio wybranej aplikacji
- Zaznacz pole, aby aktywować Kliknij
- Kliknij Kliknij
- Wybierz DPad Up aka Directional Pad Up - to KeyEvent
(Kliknij obraz, aby powiększyć; najedź, aby poznać szczegóły)
(Kolejność zdjęć: Śledź obrazy od lewej do prawej w każdym rzędzie)
Teraz utwórz akcję dla przycisku zmniejszania głośności / - w wyżej wymieniony sposób, ale w ostatnim kroku wybierz DPad w dół .
Jest to czas uruchomić aplikację, którą wybrany we wspomnianych kroków i spróbuj naciskając głośności w górę i ściszanie przycisków. Będą działać jako klawisze ↑ ↓ kierunkowe klawiatury.
Zwróć uwagę, że w przeciwieństwie do fizycznej klawiatury, w której przytrzymanie klawisza kierunkowego system będzie kontynuował przewijanie w górę / w dół, nie jest to zachowanie, które można zaobserwować, naciskając długo (wcześniej wybrane) przyciski urządzenia.
Ponadto zamiast wybierać DPad Up i DPad Down , wybierz Page Up i Page Down, aby symulować klawiaturę Pg Upi Pg Dnklawisz lub przypisać je do innej akcji wymienionej w kroku 10 .
I nie zawracaj sobie głowy poziomem głośności dzwonka lub głośnika, ponieważ można nimi zarządzać, naciskając długo te przyciski zwiększania i zmniejszania głośności . To zachowanie obowiązuje, gdy uruchomiona zostanie wybrana powyżej aplikacja.
Z powodzeniem przetestowałem wyżej wymienione rozwiązanie w Chrome, Firefox i niektórych edytorach tekstu. Na razie w porządku!
Nie! To rozwiązanie nie jest dobre dla wszystkich aplikacji. Chcemy objąć wszystkie aplikacje, więc po co ograniczać się tylko do przeglądarek internetowych i edytorów tekstu.
Niestety istnieją aplikacje, w których wspomniane rozwiązanie nie działa. Wydaje się, że KeyEventy nie mają wpływu na aplikacje takie jak Foxit MobilePDF , WPS Office , BetterbatteryStats i inne na wolności.
Skupmy się teraz na nowym rozwiązaniu. Android umożliwia wysyłanie przeciągnięć za pomocą input
polecenia; Dodatki Xposed pozwalają na użycie niestandardowego skrótu jako akcji; Tasker może utworzyć niestandardowy skrót do użycia input swipe
.
Instrukcje dla Taskera i Xposed Additions
Najpierw potrzebujemy współrzędnych początku i końca przeciągnięcia (X i Y), aby użyć ich w input
poleceniu. Możemy to nagrać za pomocą polecenia Getevent .
Skonfiguruj adb na komputerze, podłącz urządzenie do komputera, włącz debugowanie USB w urządzeniu, uruchom powłokę na komputerze i wprowadź:
adb shell su -c 'getevent -l'
Wyświetli niektóre wiersze, a następnie będzie czekać w nieskończoność na dane wyjściowe.
Nadszedł czas, aby zdecydować o długości przeciągnięcia jako alternatywy dla DPad Up / Page Up .
Np. Długość strzałki mierząca przesunięcie na dwóch obrazach jest alternatywą dla przewijanej długości odpowiednio DPad Up / Down i Page Up / Down .
Gdy przeciągniesz palcem po ekranie, powłoka na PC wyświetli dane wyjściowe takie jak:
/dev/input/event0: EV_ABS ABS_MT_TRACKING_ID 0000044c
/dev/input/event0: EV_KEY BTN_TOUCH DOWN
/dev/input/event0: EV_KEY BTN_TOOL_FINGER DOWN
/dev/input/event0: EV_ABS ABS_MT_POSITION_X 00000300
/dev/input/event0: EV_ABS ABS_MT_POSITION_Y 000006de
/dev/input/event0: EV_ABS ABS_MT_PRESSURE 000000c0
/dev/input/event0: EV_ABS ABS_MT_TOUCH_MINOR 00000004
/dev/input/event0: EV_SYN SYN_REPORT 00000000
/dev/input/event0: EV_SYN SYN_REPORT 00000000
...
/dev/input/event0: EV_ABS ABS_MT_POSITION_X 000002fb
/dev/input/event0: EV_ABS ABS_MT_POSITION_Y 000004e3
/dev/input/event0: EV_ABS ABS_MT_PRESSURE 000000cc
/dev/input/event0: EV_SYN SYN_REPORT 00000000
/dev/input/event0: EV_ABS ABS_MT_PRESSURE 000000c8
Po wykonaniu przeciągnięcia w górę o określonej długości naciśnij Ctrl+ Cna PC, aby zatrzymać polecenie.
W wyjściu zanotuj pierwsze wpisy ABS_MT_POSITION_X ( 00000300
) i ABS_MT_POSITION_Y ( 000006de
) oraz ostatnie wpisy ABS_MT_POSITION_X ( 000002fb
) i ABS_MT_POSITION_Y ( 000004e3
). Są to współrzędne początkowe (X1, Y1) i końcowe (X2, Y2) w formie szesnastkowej. Konwertuj je na dziesiętne (wypróbuj tutaj konwerter ).
W powłoce, jeśli wpiszesz:
adb shell input touchscreen swipe X1 Y1 X2 Y2
(zamień X1, Y1 i X2, Y2 na teraz przekonwertowane współrzędne dziesiętne) można zauważyć przesunięcie w górę urządzenia skutecznie symulujące przewijanie w dół. Manipuluj tymi współrzędnymi, aż uzyskasz idealne przewijanie w dół.
Jako alternatywę korzystania z Getevent możesz wypróbować bardziej przyjazne podejście.
Włącz lokalizację wskaźnika w obszarze Opcje programisty . Po włączeniu pasek stanu urządzenia zostanie pokryty paskiem pokazującym niektóre współrzędne, które zmieniłyby się wraz z ruchem dotknięcia / przesunięcia palcem po ekranie.
Czas nagrać długość machnięcia. Dotknij i przytrzymaj palec na ekranie oraz notatkę X:
i Y:
pokazane u góry. Zacznij przesuwać palec w górę na żądaną długość; przystanek ale nie zwolnić palec i zanotować odpowiedni X:
i Y:
współrzędnych.
Są to współrzędne X1, Y1 i X2, Y2 dla machnięcia w górę. Są one w postaci dziesiętnej, więc można ich używać bezpośrednio w input
poleceniu.
Możesz teraz wyłączyć lokalizacje wskaźnika .
Instrukcje specyficzne dla Tasker
Teraz utworzymy skrót do symulacji przeciągnięcia, które ręcznie wykonaliśmy w ostatnim poleceniu, w celu zautomatyzowania go.
- Uruchom Tasker i włącz go. Jeśli ikona nad zakładką Profile świeci, oznacza to, że jest już aktywna. Zauważ, że wszystko w Tasker jest zapisywane przez naciśnięcie przycisku Wstecz, co również zmieni aktywne okno.
- Utwórz zadanie w obszarze Zadania za pomocą
+
(na dole) → nazwij je (powiedz Scroll Down
).
Utwórz w nim akcję poprzez +
→ Kod → Uruchom Shell i wprowadź następujące dane:
Polecenie :input touchscreen swipe X1 Y1 X2 Y2
Zamień X1, X2 i Y1, Y2 na współrzędne, które zanotowałeś wcześniej. Np input touchscreen swipe 768 1758 763 1251
.
Zaznacz Użyj roota
- Zapisz błędy w :
%sd_err
- ten krok jest opcjonalny.
- Utwórz nowe zadanie o nazwie
Scroll Up
i utwórz w nim akcję, wykonując krok 3 . W przypadku symulacji przesuwania w dół po prostu zamień współrzędne, tak by się stało input swipe X2 Y2 X1 Y1
, i opcjonalnie użyj %su_err
do przechowywania błędów, jeśli wystąpią!
Instrukcje używania skrótów zadań w Xposed Additions
To jest ostatnia faza rozwiązania, która wykorzysta te niestandardowe skróty w Xposed Additions.
- Postępuj zgodnie z krokami 1-11 w pierwszej części dotyczącej używania dodatków Xposed
- Wybierz Skrót zamiast DPad Up lub Page Up
- Wybierz Skrót do zadania → Przewiń w górę
- Wybierz ikonę kwadratowych pól 3 x 3 u dołu
- Wybierz ikonę i wróć do Xposed Additions.
- Powtórz powyższe kroki 1-5 dla Ciszej i wybierz Przewiń w dół . Masz już pomysł, co robić za każdym razem .
Skompilowałem wideo pokazujące całą odpowiedź w akcji. Oto jest . Uważaj na jakość, ponieważ jest mocno zgrana ze 100 MB do 7,1 MB.
Twoje zdrowie!