nowa wersja klienta XMPP dla Android — edycja «FOSDEM 2020» z licznymi zmianami i nowymi funkcjami, takimi jak przeglądanie usług, , niezawodna wymiana wiadomości z MAM i push, nowy interfejs użytkownika z prośbą o uprawnienia w razie potrzeby. Nowe możliwości pozwoliły dostosować yaxim do mobilnych wymagań . Kod projektu jest licencjonowany na zasadach GPLv3.
Główne nowości:
- Interfejs został dostosowany do stylu Google «Material Design». Aby dostosować się do ubiegłorocznych zaostrzeń dotyczące publikacji w Google Play, konieczna była wymiana przestarzałej biblioteki na od Google, która zapewnia aplikacji materialny styl.
Oznacza to również, że yaxim teraz wymaga co najmniej Androida 4.0 na urządzeniu. Ponieważ wersja 4.0 została wydana w 2011 roku, wpływa to tylko na niewielką liczbę urządzeń. Użytkownicy z telefonami starszymi niż dziesięć lat powinni pozostać przy starych wersjach yaxim, które działają na Androidzie 2.3+. Ponadto, na urządzeniach z Androidem 6+ użytkownik będzie proszony o udzielenie zgody w momencie, gdy będzie to naprawdę potrzebne (na przykład podczas wymiany plików lub robienia zdjęć).
- Na Androidzie 8+ yaxim korzysta z nowych . Dla każdego kontaktu tworzony jest nowy kanał z niestandardowym dźwiękiem. Gdy użytkownik otrzyma wiadomość od kontaktu, może skorzystać z ustawień powiadomień Androida, aby zmienić melodię.
- Zapewniamy wsparcie dla inicjatywy , korzystając z subskrypcji klienta , dla której wymagana jest aktywna rejestracja In-Band na serwerze.
- Nowy umożliwia zapraszanie nowych użytkowników na serwer bez Na poniższym filmie można zobaczyć użytkownika na serwerze , tworzącego zaproszenie, które jest używane przez yaxim do rejestracji i automatycznego dodania zapraszającego. Strona zaproszenia w tym przykładzie używa , co pozwala zainstalowanemu na niej klientowi yaxim znać adres zapraszającego, co ma wpływ na prywatność, dlatego nie jest jeszcze włączone na oficjalnej stronie serwera yax.im.
- Wprowadzono nowy typ pokoi z zakładkami oraz wyszukiwanie pokoi publicznych, działające na podstawie .
- Nazwa użytkownika („imię wyświetlane”) jest teraz synchronizowana z serwerem za pomocą . Można zmienić nick w ustawieniach konta.
- Przeglądarka pokoi może teraz być używana do wykrywania usług poprzez wpisanie poprawnego adresu XMPP w polu wyszukiwania:
Wykrywanie nie ogranicza się do serwerów i pokoi, można również szukać użytkowników, rozmawiać z nimi i dodawać ich do swojej listy kontaktów:
- Dodano wsparcie dla protokołu Matrix (z użyciem ), który początkowo został zaprezentowany jako . Yaxim korzysta z oficjalnego mostu na matrix.org, który również był przygotowany na FOSDEM 2020.
- Niezawodna wymiana wiadomości. Dla użytkowników, którzy korzystają z yaxim równolegle z innym klientem, zapewniono wsparcie (MAM). Podczas łączenia z serwerem yaxim teraz aktywuje MAM i żąda wszystkich wiadomości od ostatniej synchronizacji. Gwarantuje to, że yaxim otrzyma wszystkie wiadomości, które zostały już dostarczone innemu klientowi.
- Podczas instalacji na urządzeniach z usługami Google Play yaxim zarejestruje się do przez serwer push.yax.im. Gwarantuje to, że aplikacja uruchamia się z głębokiego snu lub zostaje uruchomiona, gdy ktoś wysyła użytkownikowi nową wiadomość.
Te zmiany są odzwierciedlone w .
- Zmiany „pod maską”. Wewnętrzna baza danych wiadomości czatu została zoptymalizowana poprzez dodanie indeksów bazy danych dla wszystkich częstych operacji, co sprawia, że yaxim działa znacznie szybciej podczas ładowania okien czatu z długimi historiami. Ponadto, yaxim został przetłumaczony z przestarzałej biblioteki XMPP Smack 3 na .
Droga do 1.0
Przedstawiona wersja przyniosła znaczące zmiany, choć autorzy mieli nadzieję, że uda się zrobić jeszcze więcej, aby zaprezentować wersję 1.0 na Jednakże obecna baza kodu zyskała znaczące ulepszenia w zakresie niezawodności i użyteczności, a autorzy nie chcą ich dłużej wstrzymywać. Konieczna jest większa praca nad prezentacją kontaktów, aby umożliwić sortowanie według daty rozmowy oraz szybkie wyszukiwanie kontaktów. Dodatkowo należy zintegrować tworzenie pokoi i zapraszanie do nich znajomych.
Użytkownicy yaxim od dawna oczekiwali wsparcia dla MAM, jednak obecnie żądane są tylko osobiste wiadomości użytkownika. Historia pokoju nadal jest pobierana przez klienta za pomocą dziedziczonego mechanizmu, co oznacza, że użytkownik może czasami przegapić niektóre części historii pokoju. Wbudowane w czat obrazy nie mają odpowiedniego buforowania, a yaxim próbuje załadować każde załączenie, niezależnie od jego rozmiaru i tego, czy może być wyświetlone w kliencie. To należy zmienić w taki sposób, aby ograniczyć ładowanie aktualnych plików obrazów do określonego maksymalnego rozmiaru.
Źródło: opennet.ru
