Mariano,
The change that I made and worked was in the POST request to
https://www.google.com/accounts/ClientLogin -one of the input
parameters is "accountType" which I used to call with
"HOSTED_OR_GOOGLE" and that caused the authentication to occur against
the hosting account. Changing it to "GOOGLE" solved that issue. As you
can tell this was part of the manual authentication (where I cache the
"GoogleLogin auth=XXXX" token.)
As far as 2.0 accounts, in order to support both pre 2.0 and 2.0
devices, I decided to offer both options (you pick to enter user/name
password or you pick an account to use. If you have 2.0 device you
have both options, in 1.6 you have only the UN/PW option.
In my tests I found that 2.0 authentication works for the most part
but hosted accounts are still an issue. Here are some observations:
1. If you manually add a Google account (using Settings > Accounts and
sync) - everything works as expected.
2. If you manually add a hosted account (again using Settings >
Accounts and sync), it will authenticate against the hosted account so
the authentication token by default will be for the hosted account. If
you try to retrieve the Reader subscription list with that token, the
request does not fail but you get an empty list (looks like it is a
brand new account with no subscriptions).
3. Poking in the source, I found that if you use
AccountManager.getAuthTokenByFeatures(), you can, in the "Feature"
array, supply "GOOGLE" as a feature, and that probably will get you
the Google token (instead of the hosted). That may work if you have
the same password for both Google and Hosted account, but I don't
think it will work if you have different passwords. This same call
will also provide an option to add (register) a new account (by
prompting for UN/PW) which is probably the only way to get any hosted
account to work.
I am still trying to find a way to get the hosted accounts working.
Stefan
On Feb 27, 1:38 pm, Mariano Kamp <mariano.k...@gmail.com> wrote:
> Hey Stefan,
> did you also get this to work with the Android 2.0 authentication?
> Where do you specify "GOOGLE" thereß
> Cheers,
> Mariano
> On Thu, Feb 11, 2010 at 9:15 PM, Stefan Kyntchev <skyntc...@gmail.com> wrote:
> > Thanks Mihai,
> > Switching to "GOOGLE" did the trick. I was using "HOSTED_OR_GOOGLE"
> > which was "preferring" the hosted account.
> > Thank you very much for the help.
> > Stefan
> > On Feb 11, 11:01 am, Mihai Parparita <mih...@google.com> wrote:
> >> On Thu, Feb 11, 2010 at 6:42 AM, StefanK <skyntc...@gmail.com> wrote:
> >> > Thanks for heads up Brad. I am the author of BeyondPod, a podcatcher
> >> > for Android and Windows Mobile. Google Reader integration is widely
> >> > used feature in both apps and when anything goes wrong there I get
> >> > tons of support emails. I am really happy that for the first time I
> >> > can be proactive about it.
> >> > For some reason, currently, if users use an e-mail that is hosted by
> >> > Google Apps, they can't login in Reader using the
> >> >https://www.google.com/accounts/ClientLogin. From my tests, it appears
> >> > that when registering for a Reader account with Google Apps e-mail, a
> >> > different account is created (they may or may not have the same
> >> > password) and when using ClientLogin, it logs in to the Google App
> >> > account and the SID token is invalid for Reader.
> >> > Will this change with the new Authentication changes, or is there
> >> > another way to handle Google Apps logins?
> >> Have you tried setting accountType to GOOGLE (as described athttp://code.google.com/apis/accounts/docs/AuthForInstalledApps.html#R...
> >> Reader does not support hosted (Google Apps) accounts.
> >> Mihai