thanks for the response.

I actually do something similar to what you are suggesting.  The
getAuthToken blocks nicely, but as soon as I fire off the
startActivityForResult(intent,REQUEST_AUTHENTICATE) then I get a
Permission request dialog on the screen and meanwhile the calling
activity gets destroyed.  When I respond to the Permission dialog the
app goes back thru onCreate and everything gets worse from there on.

Running the exact same code on a Honeycomb or lower device everything
works perfectly fine.  I'll try it on an emulator next to see if that
works better (although I never seem to have any luck in setting them
up).

Nick

On Jan 3, 9:11 am, H <m...@howardb.com> wrote:
> If you set the callback parameter on the getAuthToken() to null then
> the method will block and wait and your activity's lifecycle isn't
> interrupted. You can then get the bundle returned and if there is an
> intent to ask show the grant credentials screen then you can manually
> invoke it with startActivity or the other startActivityForResult.
>
> I've just tried it on my app in the 4.0 emulator and if I disallow the
> credentials screen (="no thanks"), nothing unexpected happens (other
> than a crap load of strictmode exceptions).
>
> HTH.
>
> On Jan 2, 8:09 pm, Spiral123 <cumis...@gmail.com> wrote:
>
>
>
>
>
>
>
> > it gets stranger.
>
> > In Honeycomb and earlier the app fires off the getAuthToken() request
> > on another thread and then goes into onPause() whilst it waits for the
> > authentication to happen asynchronously.
>
> > In Ice Cream Sandwich the app goes into onPause(), then onStop() then
> > onDestroy().  Then the app fires up an onCreate() again and launches a
> > second authentication thread before the first has completed.
>
> > I guess the lifecycle does stipulate that the activity should always
> > be prepared to recreate itself cleanly in case the system destroys it
> > - maybe ICS is more aggressive in doing that than previous versions of
> > Android...any comments or experiences from anyone else?
>
> > Also, I suppose I now need to look at SingleThreadExecutor to block
> > unwanted additional auth requests being generated from the activity.
> > Does anyone have any better ideas?
>
> > all the best,
>
> > Nick
>
> > On Jan 2, 11:16 am, Spiral123 <cumis...@gmail.com> wrote:
>
> > > Hi all....
>
> > > Just got my new Galaxy Nexus phone with ICS before New Years and have
> > > been playing around with the old and new (in development) versions of
> > > my app on it.
>
> > > Whilst doing so, I've come across a problem that has me stumped: if I
> > > call getAuthToken() in my app to authenticate a new account to my
> > > Google API of choice and approve the request then everything works
> > > fine.  If I disallow or hit the back key from the 'Permission request'
> > > dialog then the app goes into a tailspin and eventually fails with a
> > > leaked window.
>
> > > I spent a couple of hours looking at this and as far as I can tell ICS
> > > does not seem to be throwing the OperationCanceledException from the
> > > system-generated Permissions request dialog as it should.
>
> > > To verify the problem I've downloaded and replicated the issue with
> > > the Android Picasa Sample and the google-meeting-scheduler.  The
> > > projects are set to API Level 14 Build Target.
>
> > > Has anyone else seen a similar behavior - or can anyone confirm that
> > > they don't have the same problem with their apps?  I feel I must have
> > > had too much turkey over xmas and my addled brain has missed something
> > > obvious.
>
> > > Nick

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to