poniedziałek, lipca 06, 2015

Papa dla ClientLogin

Po tym jak Google wyłączyło ClientLogin przestało działać kilka moich aplikacji.
Z prywatnych przestało działać narzędzie do wyliczania podobnych postów na blogu, z "publicznych" ;-) Bloggeroid.

Sięgnąłem po kod który kiedyś, dawno temu, napisałem w ramach projektu "Bloggeroid Pro" i dodałem do Bloggeroida uwierzytelnianie w oparciu o OAuth2... ale przy pomocy przeglądarki.

Userzy z Google Play Services nadal będą działać tak jak to robili, ale ci którzy używali ClientLogin będą teraz używać OAuth2, które w trakcie uwierzytelniania otworzy im aktywność z przeglądarką.
Nie jest to metoda zalecana przez Google, ale dla ludzi którzy nie mają Google Play Services jedyna.

Nie obyło się bez problemów.
Po pierwsze zapomniałem dodać Picass'ę do scope'u, przez co tokeny działały tylko dla Bloggera.
Nie wykryłem tego bo na emulatorach nie miałem obrazków do wrzucenia ich w ramach testów ;-)
Po drugie mieszanie synchronicznej logiki z asynchroniczną (wszystko przez magię wait i notifyAll ;-)) w miejscu gdzie już trochę takich rzeczy jest, mota trochę momenty gdy użytkownik zobaczy dialog z komunikatem.... do tego chyba zobaczy go za każdym razem ;-)

Co najgorsze to i tak zmiana głównie dla ludzi z urządzeniami z "nieprawdziwym" Androidem, bo nie pobłogosławionym przez Google....


Podobne postybeta
Testowanie boli...
Me hacker - debuger dobry
Chrome2Chrome 0.7.2 - OAuth w akcji ;-)
Google Play Services dobre jest :-)
Programowanie trudne ;-)