Możesz utworzyć funkcjonalną pływającą bańkę Dialera Google dostępną na urządzeniach Pixel 2 za pomocą Taskera i AutoTools - nie jest wymagane rootowanie!
Wcześniej informowaliśmy o tym, jak to zrobić włącz nowy pływający dymek dialera w aplikacji Google Phone modyfikując pliki na urządzeniu z Androidem. Od tego czasu nasz ulubiony twórca wtyczek Tasker, João Dias, wymyślił własne rozwiązanie, korzystając z aplikacji AutoTools, aby odtworzyć tę samą pływającą bańkę. Jego wideo jest fajne, ale towarzyszące post brakowało trochę opisu, więc pomyślałem, że stworzę osobny samouczek i udoskonalę projekt João, dodając wizualne informacje zwrotne do przełączników w pływającej bańce Dialera.
Jak zawsze, najpierw przeprowadzimy tutorial, a na końcu znajdziesz linki do pobrania i instrukcje dotyczące importowania projektu.
Replikuj pływającą bańkę Dialera Google
[appbox googleplay com.joaomgcd.autotools]
Wtyczka AutoTools zawiera nowe ustawienie wstępne ekranu internetowego: pływający pasek. Korzystając z tego ustawienia wstępnego, możemy odtworzyć pływającą bańkę Dialera Google na dowolnym telefonie. Jeśli znasz się na Taskerze, odtworzenie go będzie łatwe, ale jeśli nie znasz Taskera i AutoTools, czytaj dalej, a pokażemy Ci, jak to zrobić.
Zmiany, które wprowadziłem polegają na usunięciu ścieżek do ikon głośności i mikrofonu i zastąpieniu ich zmiennymi. To samo zrobiłem z poleceniami dla tych opcji. W ten sposób możemy stworzyć wizualny przełącznik po naciśnięciu przycisku. Jest to szczególnie przydatne w przypadku opcji wyciszenia, dzięki czemu można sprawdzić, czy mikrofon jest włączony.
Połączenie przychodzące
Profil staje się aktywny po odebraniu połączenia. Prezentowany jest ekran AutoTool WebScreen: Pływające ustawienie paska.
PROFIL ZADOWNIKA - Rozmowa w toku
Profile: Call In Progress
Zdarzenie: Podniesienie słuchawki
Wpisz: Połączenie w toku
A1: Flash [Tekst: Dzwonię... Długie: wyłączone]
A2: Zestaw zmiennych [Nazwa:%callMute Do: wyciszenie
Zmienne powtarzania: wyłączone Wykonuj obliczenia: wyłączone Dołączanie: wyłączone ]
A3: Zestaw zmiennych [Nazwa:%callSpeaker Do: głośnik
Zmienne powtarzania: wyłączone Wykonuj obliczenia: wyłączone Dołączanie: wyłączone ]
A4: Zestaw zmiennych [Nazwa:%mutePath
Do:/pathto/micoff.png
Zmienne powtarzania: wyłączone Wykonuj obliczenia: wyłączone Dołączanie: wyłączone ]
A5: Zestaw zmiennych [Nazwa:%volPath
Do:/pathto/voloff.png
Zmienne powtarzania: wyłączone Wykonuj obliczenia: wyłączone Dołączanie: wyłączone ]
A6: Ekran internetowy AutoTools [Konfiguracja: Wstępne ustawienie ekranu: Pływający pasek
Tryb wyświetlania: nakładka
Zamknij identyfikator nakładki: zadzwoń do interfejsu użytkownika
Źródło: /pathto/page.html
Czas trwania tostu: 5000
Kolor tła: #00FFEBEE
Szerokość: 75
Wzrost: 75
Grawitacja: w lewo
Przesunięcie X: 50
Przesunięcie Y: -100
Animacja: Powiększ
Identyfikator nakładki: zadzwoń do interfejsu użytkownika
Czas trwania pokazu: 500
Ukryj czas trwania: 250
Przeciągnij: można przeciągać w dowolne miejsce
Przeciągnij ruchy: wszystkie kierunki
Rzut do odrzucenia: brak romansu do odrzucenia
Aktualizacja: prawda
Ikony: %volPath,%mutePath,
/pathto/endcall.png,
Polecenia: %callSpeaker,%callMute, end
Prefiks polecenia: połączenie telefoniczne
Widoczne elementy: 3
Pierwsze elementy: 3,4,2,5
Wypełnienie przedmiotu: 24
Czas animacji: 400
Okrąg po zwinięciu: prawda
Niestandardowa ikona rozwinięcia:
/pathto/call.png
Przyciągaj do elementów: prawda
Kolor pływającego paska: #1565C0
Kolor ekspandera: czarny
Kolor tyłu ekspandera: #0D47A1 Limit czasu (sekundy): 30 ]
Czytaj więcej
Zamiast predefiniowanych ścieżek do mikrofonu i głośności oraz odpowiadających im poleceń, używam zmiennych %mutePath I %volPath. Zmienią się one później w zależności od wydanego polecenia.
The %callWyciszenie I %callGłośnik przytrzymaj rzeczywiste polecenie przypisane do istniejących przycisków. Polecenie zmieni się po naciśnięciu przycisku, a pływająca dymka Dialera wyświetli odpowiednią ikonę.
Tworzenie (lub modyfikowanie tej bańki, jeśli korzystałeś z samouczka Joao) jest nieco bolesne, ale dobra wiadomość jest taka, że możemy po prostu skopiować i wkleić tę czynność później. Pamiętaj, aby przypisać identyfikator WebScreen, ponieważ będziemy go później potrzebować do anulowania dymka.
Połączenie zakończone
Uruchamia się go poleceniem: rozmowa telefoniczna=:=koniec i uruchamia zadanie Połączenie zakończone. Użyj narzędzia AutoTools WebScreen w trybie wyświetlania zamknij. Użyj tego samego identyfikatora WebScreen, co w profilu połączenia przychodzącego.
PROFIL ZADAWCY - Połączenie zakończone
Profile: Call Ended
Zdarzenie: Telefon nieaktywny
Wpisz: Połączenie zakończone
A1: Flash [Tekst: Połączenie zakończone... Długie: wyłączone]
A2: Ekran internetowy AutoTools [Konfiguracja: Tryb wyświetlania: Zamknij
Zamknij identyfikator nakładki: zadzwoń do interfejsu użytkownika
Czas trwania tostu: 5000
Wzrost: 400
Grawitacja: Środek
Animacja: Wsuń się od góry
Czas trwania pokazu: 500
Ukryj Czas trwania: 250 Limit czasu (sekundy): 30 ]
Czytaj więcej
Polecenia
Ten profil kontroluje wszystkie akcje wysyłane przez pływającą bańkę Dialera. Każdy wyzwalacz zaczyna się od prefiksu telefon=:= i wyzwala jeden z przełączników/akcji w zależności od przechwyconego sygnału wejściowego.
PROFIL ZADAWCY – Wywołaj polecenia
Profile: Call Commands
Zdarzenie: Polecenie AutoApps [ Konfiguracja: Polecenie Filtr: połączenie telefoniczne=:=
Nazwy zmiennych: polecenie ]
Wpisz: Wywołaj polecenia
A1: Jeśli [%polecenie ~ *głośnik]
A2: Zestaw zmiennych [Nazwa:%callSpeaker Do: unspeaker
Zmienne powtarzania: wyłączone Wykonuj obliczenia: wyłączone Dołączanie: wyłączone ]
Jeśli [%polecenie ~ głośnik]
A3: Zestaw zmiennych [Nazwa:%volPath To:/pathto/volon.png
Zmienne powtarzania: wyłączone Wykonuj obliczenia: wyłączone Dołączanie: wyłączone ]
Jeśli [%polecenie ~ głośnik]
A4: Zestaw zmiennych [Nazwa:%callSpeaker Do: głośnik
Zmienne powtarzania: wyłączone Wykonuj obliczenia: wyłączone Dołączanie: wyłączone ]
Jeśli [%polecenie ~ wyłącz głośnik]
A5: Zestaw zmiennych [Nazwa:%volPath To:/pathto/voloff.png
Zmienne powtarzania: wyłączone Wykonuj obliczenia: wyłączone Dołączanie: wyłączone ]
Jeśli [%polecenie ~ wyłącz głośnik]
A6: Ekran internetowy programu AutoTools
[Pływający pasek – taki sam jak w przypadku połączenia w toku]
A7: Zestaw głośnomówiący [Ustaw: Przełącz]
A8: Inaczej jeśli [%polecenie ~ *wyciszenie]
A9: Zestaw zmiennych [Nazwa:%callMute Do: wyciszenie
Zmienne powtarzania: wyłączone Wykonuj obliczenia: wyłączone Dołączanie: wyłączone ]
Jeśli [% polecenie ~ wyłącz wyciszenie]
A10: Zestaw zmiennych [Nazwa:%mutePath To:/pathto/micoff.png
Zmienne powtarzania: wyłączone Wykonuj obliczenia: wyłączone Dołączanie: wyłączone ]
Jeśli [% polecenie ~ wyłącz wyciszenie]
A11: Ustaw zmienną [Nazwa:%callMute To: wyłącz wyciszenie
Zmienne powtarzania: wyłączone Wykonuj obliczenia: wyłączone Dołączanie: wyłączone ]
Jeśli [%polecenie ~ wyciszenie]
A12: Zestaw zmiennych [Nazwa:%mutePath To:/pathto/micon.png
Zmienne powtarzania: wyłączone Wykonuj obliczenia: wyłączone Dołączanie: wyłączone ]
Jeśli [%polecenie ~ wyciszenie]
A13: Ekran internetowy programu AutoTools
[Pływający pasek – taki sam jak w przypadku połączenia w toku]
A14: Wyciszenie mikrofonu [Ustaw: Przełącz]
A15: Inaczej jeśli [%polecenie ~ koniec]
A16: Zakończ połączenie
O17: Zakończ jeśli
Czytaj więcej
Wiem, że opis na początku wygląda odstraszająco, ale jest to ten sam zestaw działań powtórzony dwukrotnie. Po naciśnięciu wyciszenia lub głośnika musimy utworzyć alternatywny ekran WWW z przeciwną ikoną i poleceniem wyświetlanym użytkownikowi.
A1, A8
Jeśli polecenie = głośnik/wyciszenie, nastąpi zestaw działań. Zhakowałem trochę polecenia, aby ułatwić przetwarzanie wszystkich akcji. Za pomocą tych akcji przechwytujemy polecenia wyciszenia/wyłączenia wyciszenia oraz głośnika/wyłączenia głośnika. Właśnie dlatego używam symbolu wieloznacznego * w warunku JEŻELI.
A2, A4 i A9, A11
W zależności od wydanego polecenia (wycisz/wyłącz wyciszenie|głośnik/wyłącz głośnik) ustawiam prawidłowe polecenie, które zostanie przypisane następnym razem, gdy nacisnę przełącznik. Na przykład, jeśli nacisnę przycisk, aby wyciszyć (command=:=mute), chcę zaktualizować ekran WebScreen i upewnić się, że następnym razem, gdy nacisnę ten przycisk, połączenie nie zostanie wyciszone (command=:=włącz wyciszenie). To samo dotyczy działania głośników.
A3, A5 i A10, A12
W podobny sposób chcę się upewnić, że ścieżki do odpowiednich ikon zostaną zmienione po wydaniu przycisku. Jeśli nacisnę ikonę wyciszenia, chcę zastąpić ikonę wyłączenia wyciszenia, dlatego ścieżka musi zostać zaktualizowana.
A15
Jeśli polecenie brzmi „zakończ”, po prostu zakończ połączenie.
A7, A14
Po prostu użyj akcji wyciszenia i głośnika, aby przełączyć ustawienia.
Podsumowanie i pobranie
Teraz wiesz, jak to zrobić za pomocą Taskera i AutoTools. Nowy projekt Dialer Floating Bubble zapewnia ładne, wizualne informacje zwrotne, dzięki którym interakcja z telefonem podczas rozmowy telefonicznej jest odrobinę łatwiejsza. Zapraszam do dalszej modyfikacji tego projektu Taskera.
Pobierz projekt pływającego przycisku programu Tasker Dialer
Pobierz powyższy plik ZIP i wyodrębnij zawartość do pamięci wewnętrznej urządzenia z systemem Android. Wyodrębnij folder callui do katalogu Tasker/icons. Otwórz Taskera i wyłącz „Tryb dla początkujących” w Preferencjach. Następnie wróć do strony głównej Taskera i naciśnij długo ikonę strony głównej w lewym dolnym rogu. Zobaczysz opcję „importowania” projektu. Stuknij tę opcję, a następnie znajdź wyodrębniony wcześniej plik .prj.xml. Po zaimportowaniu zobaczysz nową kartę na dole obok domyślnej ikony strony głównej w Taskerze. Zawiera profile i zadania tego projektu pomocniczego.
Podążaj za Poradniki dla programistów XDA podaj więcej takich postów. Sprawdź także nasze Wskazówki i porady dla Taskera forum najnowszych dzieł wśród entuzjastów automatyzacji w naszej społeczności.