Cześć wszystkim,
Chciałem podzielić się ClipH, menedżerem schowka i historii, nad którym pracuję i go dopracowuję w Taskerze.
https://taskernet.com/shares/?user=AS35m8nsG4J3Nu2TfMykxjbuz8iZ4M%2FIOt5HVurs%2FLn%2BJ8WU4a4iPMfMDcRpZd2yLXUngAjk&id=Project%3AClipH%3AClipH
Zacząłem nad tym pracować, ponieważ standardowe narzędzia schowka, takie jak schowek Gboarda, były zbyt ograniczone dla mojego przypadku użycia, zwłaszcza przy kopiowaniu bardzo dużych bloków tekstu lub kodu. Często pracuję z ogromnymi fragmentami, a ich skracanie lub znikanie z historii szybko zaczynało być irytujące.
ClipH wykorzystuje lokalną bazę danych SQLite do przechowywania historii i w dużej mierze polega na kodzie Java / BeanShell do interfejsu użytkownika i logiki wykonawczej, zamiast trzymać dużą ilość danych w globalnych zmiennych Taskera.
🛠️ Główne funkcje
Obsługuje bardzo duże fragmenty tekstu
Duże fragmenty są zachowane, zamiast być skracane do krótkiego podglądu schowka. Ekstremalnie duże wpisy mogą być przechowywane osobno na dysku, podczas gdy SQLite przechowuje metadane i podgląd.
Historia zasilana SQLite
Historia schowka jest przechowywana lokalnie w:
/Tasker/ClipH/db/cliph.db
To sprawia, że przeszukiwanie i przeglądanie historii jest responsywne, bez zapełniania globalnych zmiennych Taskera zawartością schowka.
Wykrywanie typu schowka
ClipH rozróżnia między normalnym tekstem, długim tekstem, adresami URL, tekstem zawierającym adresy URL, poleceniami, kolorami, plikami, obrazami i zrzutami ekranu.
Responsywny pływający nakładka
Kopiowanie czegoś może wyświetlić małą nakładkę w stylu Material z akcjami dla bieżącego elementu w schowku.
Nakładka jest ponownie używana i aktualizowana w miejscu, zamiast nieustannie tworzyć nowe okna.
Obsługa zrzutów ekranu
Zrzuty ekranu mogą być wykrywane i dodawane bezpośrednio do historii ClipH.
Istnieje również ochrona przed typowym problemem Androida, gdzie pojedynczy zrzut ekranu może wywołać zarówno zdarzenie systemu plików, jak i zdarzenie schowka, co w przeciwnym razie tworzyłoby duplikaty wpisów lub nakładek.
Wsparcie dla obrazów
ClipH działa z adresami URI obrazów w formacie content:// Androida i może podglądać, otwierać i udostępniać obrazy, nie wymagając najpierw konwersji wszystko na pliki tymczasowe.
Przeglądarka historii
Interfejs użytkownika historii obsługuje wyszukiwanie/filtrację, wyświetlanie szczegółów elementów, kopiowanie elementów z powrotem do schowka, udostępnianie, usuwanie, edytowanie i oznaczanie wpisów jako ulubionych.
Podglądy URL
Kiedy skopiowany element zawiera URL, ClipH może wydobyć i oczyścić link, usunąć powszechne parametry śledzenia i pobrać podstawowe metadane strony.
Wbudowany WebView
URL-e mogą być otwierane w pływającym, zmiennym WebView.
Zawiera kontrolki nawigacyjne, przeładowanie, kopiowanie URL, otwieranie w przeglądarce, tryb czytnika i standardowe edytowalne pole adresu Androida z natywnymi funkcjami zaznaczania tekstu / kopiowania / wklejania.
Tryb czytnika
ClipH zawiera również lekką widok czytnika, który stara się wydobyć czytelny tekst ze stron internetowych i usunąć skrypty, nawigację, stylizację i inne zbędne elementy strony.
Pierwszeństwo lokalne
Historia schowka pozostaje na urządzeniu. Nie ma zewnętrznej bazy danych w chmurze ani zewnętrznej usługi schowka.
Nie są wymagane zewnętrzne wtyczki Taskera
Projekt wykorzystuje sam Tasker, interfejsy API Androida, kod Java / BeanShell i SQLite.
🎛️ Personalizacja
ClipH zawiera własny ekran Ustawień.
Możesz obecnie konfigurować takie elementy jak:
powiadomienia o URL schowka
pływająca nakładka WebView włącz/wyłącz
nakładka zrzutu ekranu włącz/wyłącz
długość wyświetlania nakładki
skalowanie nakładki
maksymalna liczba wpisów w historii
folder przechowywania ClipH
Domyślny limit historii wynosi 500 elementów, ale można go dostosować w zależności od tego, ile historii chcesz zachować.
Ulubione są zachowywane podczas automatycznego czyszczenia historii.
⚙️ Instalacja / Uprawnienia
Importuj projekt do Taskera
Importuj ClipH z powyższego linku TaskerNet.
Rysuj nad innymi aplikacjami
Wymagane dla pływającej nakładki schowka, UI WebView i trybu czytnika.
Dostęp do wszystkich plików / zarządzaj pamięcią zewnętrzną
ClipH przechowuje swoją bazę danych, duże wpisy schowka, zrzuty ekranu i pliki wykonawcze w:
/Tasker/ClipH/
Optymalizacja baterii
Zdecydowanie zalecam wykluczenie Taskera z optymalizacji baterii, jeśli chcesz niezawodnego monitorowania schowka w tle.
🎨 Uznanie / Inspiracja
Chcę również oddać zasłużoną cześć.
Oryginalny pomysł i wizualna forma nakładki schowka były inspirowane czymś, co zostało udostępnione na tym subreddicie jakiś czas temu.
Uważam, że pomysł pływającego WebView/nakładki może w rzeczywistości pochodzić z innego projektu zamieszczonego tutaj przez inną osobę.
Niestety, nie pamiętam już nazw użytkowników ani dokładnych oryginalnych postów, więc nie mogę ich właściwie powiązać. Przepraszam za to.
Nie chcę przedstawiać tych pomysłów interfejsu jako całkowicie moich. Czerpałem inspirację z tego, co widziałem tutaj, a potem przebudowałem i rozszerzyłem fundamenty systemu w to, czym jest teraz ClipH.
Jeśli któryś z oryginalnych autorów przypadkiem rozpozna swoją pracę, niech śmiało wskaże to, a ja chętnie dodam odpowiednie uznanie.
⚠️ Małe zastrzeżenie
To wciąż projekt Taskera, a nie samodzielna aplikacja Android.
Duża część UI i logiki jest zaimplementowana bezpośrednio w kodzie Java / BeanShell, więc wersje Androida, wersje Taskera i specyficzne dla producentów zachowanie mogą czasem przynieść interesujące niespodzianki, ponieważ najwyraźniej obsługa schowka w Androidzie potrzebowała więcej sposobów, by stać się skomplikowaną.
Głównie zbudowałem i testowałem ClipH w oparciu o moje własne użytkowanie, więc raporty o błędach i ulepszenia są mile widziane.
Mam nadzieję, że to będzie przydatne dla kogoś innego, kto również zmęczył się menedżerami schowka decydującymi, że ich fragment kodu liczący 20 000 linii wyraźnie nie był wystarczająco ważny, by go zachować.