Spisu treści:
- Co to są usługi ułatwień dostępu?
- Dlaczego niektóre aplikacje z nich korzystają
- Rozumowanie przez Google nowych ograniczeń
- Przyszłość to interfejsy API
Istnieje wiele ruchomych części do wszystkich naszych ulubionych aplikacji. Możesz nie myśleć o tym podczas przewijania osi czasu na Twitterze lub oglądania filmów na YouTube, ale ilość rzeczy, które dzieją się za kulisami, aby wszystkie te aplikacje działały tak, jak powinny, jest naprawdę niesamowita.
Niektóre aplikacje, takie jak LastPass, Tasker i akcje schowka, łączą się z Android Services Accessibility Services, aby umożliwić głębsze funkcje, które inaczej nie istniałyby, ale Google niedawno ogłosił, że aplikacje korzystające z nich bez bezpośredniej korzyści dla osób niepełnosprawnych mogą zostać usunięte ze Sklepu Play.
Usługi dostępności są ciekawym narzędziem i aby lepiej zrozumieć, co dokładnie się tutaj dzieje, musimy przyjrzeć się bliżej.
Co to są usługi ułatwień dostępu?
Usługi ułatwień dostępu znajdują się w systemie Android i umożliwiają łatwiejsze korzystanie z telefonów i tabletów osobom niepełnosprawnym. Gdy przejdziesz na stronę ustawień ułatwień dostępu na urządzeniu z Androidem, zobaczysz szereg elementów sterujących, które Google domyślnie włączył. Niektóre z tych elementów obejmują na przykład stukanie elementów na ekranie, aby urządzenie je odczytało, wypowiedziane opinie, które odczytują na głos wszystkie twoje działania, zwiększając rozmiar elementów na wyświetlaczu itp.
Zgodnie z oczekiwaniami ogólnym motywem jest ułatwienie korzystania z systemu Android osobom, które potrzebują dodatkowej pomocy.
Oprócz usług domyślnie wbudowanych w Androida programiści mogą korzystać z usług ułatwień dostępu z własnymi aplikacjami, aby tworzyć nowe funkcje, które z nich korzystają. W witrynie dla deweloperów Androida usługi ułatwień dostępu opisano w następujący sposób:
Z usług dostępności należy korzystać wyłącznie w celu pomocy użytkownikom niepełnosprawnym w korzystaniu z urządzeń i aplikacji Android. Działają w tle i odbierają wywołania zwrotne przez system po uruchomieniu AccessibilityEvents. Takie zdarzenia oznaczają pewne zmiany stanu w interfejsie użytkownika, na przykład fokus zmienił się, kliknięto przycisk itp. Taka usługa może opcjonalnie zażądać możliwości zapytania o zawartość aktywnego okna. Opracowanie usługi dostępności wymaga rozszerzenia tej klasy i wdrożenia jej metod abstrakcyjnych.
Dlaczego niektóre aplikacje z nich korzystają
Chociaż głównym celem usług ułatwień dostępu jest umożliwienie programistom tworzenia narzędzi przeznaczonych dla osób niepełnosprawnych, w ciągu ostatnich lat widzieliśmy wiele aplikacji, które skorzystały z tego zasobu, aby stworzyć rozbudowane funkcje, które mogą przynieść korzyści techniczne każdemu.
Z usług dostępności można korzystać zgodnie z prawem, ale niestety nie zawsze tak się dzieje.
Na przykład funkcja Wypełnianie aplikacji LastPass odsłania nakładkę na dowolnym ekranie lub innej aplikacji, w której możesz łatwo dodawać nazwę użytkownika i hasło bez konieczności otwierania pełnej aplikacji LastPass. Działania Schowka również korzystają z usług ułatwień dostępu, dzięki czemu możesz łatwiej zarządzać skopiowanymi linkami i wykonywać na nich działania bez konieczności korzystania z pełnej aplikacji Schowki.
Jest to metoda, z której programiści korzystają już od dłuższego czasu, i chociaż technicznie działa, tworzy luki, których Google nie lubi.
Rozumowanie przez Google nowych ograniczeń
O ile usługi dostępności mogą być używane, gdy są legalnie używane, możliwe jest również złośliwe korzystanie z usługi. Aplikacje korzystające z usług ułatwień dostępu otwierają większe zagrożenia bezpieczeństwa niż te, które tego nie robią, co naraża urządzenia na ataki.
Krótko po ogłoszeniu przez Google decyzji o ograniczeniu aplikacji, które mogą korzystać z usług ułatwień dostępu, odkryto, że zmiana była prawdopodobnie związana z atakiem „nakładki toastowej”, który został wykryty przez firmę TrendMicro zajmującą się bezpieczeństwem. Zasadniczo atak nakładki toastowej pozwala złośliwym aplikacjom wyświetlać obrazy i przyciski nad tym, co naprawdę powinno być pokazane, aby ukraść dane osobowe lub całkowicie zablokować użytkowników na urządzeniu.
Aplikacje korzystające z tego ataku nakładki toastowej zostały usunięte ze Sklepu Play, a łatka z wrześniowym biuletynem bezpieczeństwa usuwa lukę, ale jest to tylko jeden przykład tego, jak aplikacja dotykająca usług dostępności może spowodować poważne szkody.
Przyszłość to interfejsy API
Aplikacje korzystające z Usług ułatwień dostępu w celu legalnego wyłączenia osób niepełnosprawnych będą nadal istnieć, ale dla tych, którzy nie są ukierunkowani na tę konkretną grupę demograficzną, Google ma rozwiązanie - interfejsy API. W przykładzie LastPass nowy interfejs API autouzupełniania z Androidem Oreo umożliwia LastPass oferowanie funkcji podobnych do funkcji automatycznego wypełniania bez konieczności korzystania z usług dostępności.
Oznacza to, że użytkownicy muszą korzystać z nowszych wersji Androida, aby uzyskać dostęp do wszystkich funkcji niektórych swoich ulubionych tytułów, ale pod koniec dnia Twoja funkcjonalność pozostaje, a jednocześnie ogranicza potencjalne zagrożenia bezpieczeństwa.
Rozumiemy irytację, jaką niektórzy użytkownicy odczuwają w związku z tą zmianą, ale patrząc na to z perspektywy Google, jest to ruch, który po prostu ma sens. Usługi ułatwień dostępu nigdy nie były przeznaczone do korzystania z dużej części sposobów, w które wykorzystują je niektórzy deweloperzy, a Google musi się tym zająć.
Pod koniec dnia, gdy aplikacje zostaną zaktualizowane w celu obsługi licznych interfejsów API Google, otrzymamy podobne funkcje z lepszą ochroną przed atakami. O co więcej można prosić?