Moim zdaniem problem z logowaniem przez VPN zasługuje na osobny wątek, chociaż związany jest bezpośrednio z wątkiem o długim czasie logowania, a konkretnie z moim odkryciem
z tego posta.
Obecnie zalogowanie się do aplikacji przy podłączeniu do swojej sieci domowej przez VPN jest niemożliwe przy pierwszym podejściu mimo posiadania przez aplikację danych logowania )użytkownik, hasło, IP, port). Wynika to z tego, że aplikacja najpierw próbuje wyszukiwać kontroler (IP i port) poprzez multicast, a dopiero po znalezieniu go tą metodą podejmuje próbę logowania. Multicast przy połączeniu VPN naczęściej nie może się udać, stąd aplikacja raportuje niepowodzenie wyszukiwania kontrolera i pokazuje ekran z danymi logowania. Co jednak ciekawe (i denerwujące jednocześnie) - logowanie przy użyciu pokazanych na ekranie danych udaje się od razu.
Dlaczego więc aplikacja nie spróbuje logowani "samodzielnie" przy użyciu danych, które sama wyświetla na ekranie??To mimo wszystko byłby tylko półśrodek do rozwiązania problemu. Moim zdaniem mechanizm logowania powinien najpierw korzystać z danych zapisanych przez użytkownika w aplikacji, a dopiero gdy to się nie uda - spróbować wyszukiwania poprzez multicast i w przypadku niepowodzenia pokazywać dopiero wtedy ekran logowania.
Obecne rozwiązanie ma dwa skutki uboczne:
1. Niepotrzebnie spowalnia logowanie gdy telefon jest podłączony do sieci domowej bezpośrednio (nie przez VPN)
2. Uniemożliwia zalogowanie się za pierwszym razem przy połączeniu VPN
Jak dla mnie - rozwiązanie do przeróbki. Poważni deweloperzy aplikacji (często duże firmy, ale niekoniecznie) - rozumieją, że aplikacje mobilne wymagają sporego nakładu pracy pod kątem optymalizacji aby działały szybko i płynnie a przy tym nie konsumowały dużo energii. Życzyłbym sobie, aby Zamel zrozumiał takie podejście i sam nim podążał. Wtedy oceny w sklepie Play na pewno podskoczą.