нова версія XMPP-клієнта для Android - «FOSDEM 2020 edition» з численними змінами та новими функціями, такими як перегляд служб, , надійний обмін повідомленнями з MAM і push, новий інтерфейс користувача з запитом дозволів при необхідності. Нові можливості дозволили привести yaxim у відповідність до мобільних вимог . Код проекту ліцензія GPLv3.
Основні нововведення:
- Інтерфейс приведений до стилю Google Матеріальний дизайн. Щоб відповідати торішнім жорстким до публікації в Google Play довелося замінити застарілу бібліотеку на від Google, яка забезпечує додатку матеріальний стиль.
Це також означає, що yaxim тепер вимагає принаймні використання Android 4.0 на пристрої. Оскільки версія 4.0 була випущена в 2011 році, це впливає лише на невелику кількість пристроїв. Користувачі з телефонами старше десяти років повинні залишатися зі старими версіями yaxim, які працюють на Android 2.3+. Крім того, на пристроях Android 6+ користувачеві буде запропоновано надати дозвіл у той момент, коли воно стає дійсно необхідним (наприклад, при обміні файлами або фотографуванні).
- На Android 8+ yaxim використовує нові . Для кожного контакту створюється новий канал із користувальницькою мелодією. Як тільки користувач отримує повідомлення від контакту, він може використовувати налаштування повідомлень Android, щоб змінити мелодію.
- Забезпечено підтримку ініціативи , використовуючи клієнтську передплату , Для якої був потрібен сервер з активною In-Band Registration.
- Новий дозволяє запрошувати нових користувачів на сервер, не . На відео нижче можна побачити користувача на сервері , що створює запрошення, яке використовується yaxim для реєстрації та автоматичного додавання запрошення. Сторінка запрошення на цьому прикладі використовує , що дозволяє встановленому по ній клієнту yaxim знати адресу запрошуючого, що впливає на конфіденційність, тому вона поки не включена на офіційному сайті сервера yax.im.
- Реалізовано новий вид кімнат із закладок та пошук громадських кімнат, що працює на основі .
- Нік користувача («ім'я, що відображається») тепер синхронізується з сервером за допомогою . Нік можна змінити в налаштуваннях облікового запису.
- Браузер кімнат тепер можна використовувати для виявлення служб, ввівши допустиму XMPP-адресу в полі пошуку:
Виявлення не обмежується серверами та кімнатами, також можна шукати користувачів, спілкуватися з ними та додавати їх до свого списку контактів:
- Реалізовано підтримку протоколу Matrix (з використанням ), яка спочатку була представлена як . Yaxim використовує офіційний міст на matrix.org, який був підготовлений до FOSDEM 2020.
- Надійний обмін повідомленнями. Для користувачів, які використовують yaxim паралельно з іншим клієнтом, забезпечено підтримку (MAM). При підключенні до сервера yaxim активує MAM і запросить всі повідомлення з моменту останньої синхронізації. Це гарантує, що yaxim отримає всі повідомлення, які вже були доставлені до іншого клієнта.
- При установці на пристроях із сервісами Google Play yaxim буде реєструватися для через сервер push.yax.im. Це гарантує, що програма прокидається від глибокого сну або запускається, коли хтось надсилає користувачеві нове повідомлення.
Дані зміни відображені у .
- Зміни "під капотом". Внутрішня база повідомлень чату оптимізована шляхом додавання індексів бази даних для всіх частих операцій, що робить yaxim набагато швидше при завантаженні вікон чату з довгими історіями. Крім того, yaxim був переведений із стародавньої XMPP-бібліотеки Smack 3 на .
Дорога до 1.0
Представлений реліз приніс значні зміни, хоча автори сподівалися, що зможуть зробити ще більше, щоб уявити версію 1.0 до . Тим не менш, поточна кодова база набула деяких істотних покращень для надійності та зручності використання, і автори не хотіли б затримувати їх ще більше. Необхідна велика робота над поданням контактів, щоб забезпечити сортування за датою розмови та швидкий пошук контактів. Крім того, необхідно інтегрувати створення кімнат та запрошення до них друзів.
Вже давно користувачами yaxim була потрібна підтримка MAM, проте в даний час запитуються лише особисті повідомлення користувача. Історія кімнати, як і раніше, виходить клієнтом за допомогою успадкованого механізму, що означає, що іноді користувач може пропустити деякі частини історії кімнати. Вбудовані в чат зображення не мають належного кешування, і yaxim намагається завантажити будь-яке вкладення, незалежно від його розміру та того, чи воно може відображатися в клієнті. Це має бути змінено таким чином, щоб обмежити завантаження актуальних файлів зображень певного максимального розміру.
Джерело: opennet.ru
