Ever since Tracks2Miles shipped users have been having problems authorising the app if they choose to log in with their Facebook credentials.
The problem is that once the user had logged into Facebook it would redirect to a blank white page.
Last night I had another look at what was causing it.
To start with I added a Log statement to the shouldOverrideUrlLoading() method to print out the URL that was being loaded. This implied that the last URL loaded was from Facebook:
When I added some trace to the onPageStarted() method I made some progress, the output from this implied that Facebook page had actually loaded successfully and redirected back to dailymile.
I had tried loading this new URL with Firefox on the desktop and immediately got a certificate mismatch error. The URL was hosted on www.dailymile.com but the cert was for api.dailymile.com
I was a little surprised that default WebView just swallowed this with no error messages, but a bit of googling and found the following blog post about how to work round the certificate miss match and even how to make it work with Android builds before 2.2
I also pointed the problem out to Ben from dailymile and he has fixed the cert mismatch with in a couple of hours.
There will be an updated version of Tracks2Miles in the next few days with these changes (just to be safe) and a couple of other updates around distance units.