Friday, September 23, 2011

G+7 version 1.6 out - authentication problems fixed

Since I removed all .NET components from G+7, I started receiving bug reports from people who could no longer log in to Google+ with my gadget. What was really weird - I was unable to reproduce this on any of my Windows 7 machines, and I have quite a few of these, in all sorts of flavours - 32 bit, 64 bit, on laptops, desktops, workstations, whathaveyou.

Anyway, the problem started to look serious, as quite a lot of people seemed to have this problem.

My assumption was that the gadgets share cookies with the Internet Explorer, which the documentation at MSDN seemed to imply (it is not a very good documentation, mid you, there is a lot of guessing involved). So if you logged in to Google+ with Internet Explorer, the gadget gets logged in too.

Apparently, this is not entirely true, and there are circumstances where the cookies are not shared.
They do seem to always be shared on 32 bit windows. On 64 bit, not quite. I happened to have "Internet Explorer 9 Preview" installed on my 64 bit machine, and it worked. But when I uninstalled it (on a hunch), suddenly I too got locked out of Google+ in my gadget.

So the question was - what's going on? And most of all - how do I let people log in reliably? After much head-scratching it started to look like the gadget is not exactly tied to Internet Explorer. What it does get tied to is your .NET platform. So if you run a .NET application that has "Web Browser" control embedded in it, you point this at plus.google.com and authenticate with it, then the gadget is let in too.

Well, how weird. But, in absence of useful Google+ API (the current attempt is very very lacking - Google, are you listening?), this is the only way.

So, I have released version 1.6 of the G+7 gadget, which brings back the .NET based authenticator. It is more lightweight and does not attempt to log you in automatically, but it seems quite reliable.

Try it here: http://www.kalamonsoft.com/serve?file=gp7/1.6.0.0/gplus7.gadget

2 comments: