Profile

Cover photo
Verified name
Ian Barber
Works at Google
Attended University of Sussex
Lives in San Francisco
2,765,917 views
AboutPostsPhotosReviews

Stream

Ian Barber

Shared publicly  - 
 
An update to an old favourite where I talked about getting a server side auth code from an Android Google Sign In client. tl;dr Its a lot easier now.
1
Add a comment...

Ian Barber

Shared publicly  - 
 
An elegant solution!
Dear Publisher,. We are excited to introduce News, an all-new app for iPhone and iPad coming with iOS 9. News delivers stories from the best sources, beautifully designed, and selected just for you. We believe your RSS feeds feature great content, and we think Apple customers will agree.
8
2
Chris Barber's profile photoMaria Belen Cabrera's profile photo
2 comments
 
Te estoy busacandp
 ·  Translate
Add a comment...

Ian Barber

Shared publicly  - 
 
Gerwin has taken a look at some of the nice new options in the Javascript google sign-in APIs.
 
Google Sign-In 2.0

So I started my investigation in the new Identity functionalities that are apparently meant to take over from Google+ Sign-In.
https://developers.google.com/identity/sign-in/

Disclaimer: There hasn't been an official announcement for them yet and the documentation only appeared yesterday (https://developers.google.com/identity/sign-in/) so things might still be in flux and change without warning (for example you still get a lot of debugging information in the console). I also haven't looked over all of the docs in detail yet so I might be missing important facts in what I'm writing.

I've started out with some really basic examples to highlight some of the new features here:
https://scary-experiments.appspot.com/signin2/

1) basic.html
This is just the most simple implementation possible. You only define your client-id, no scopes, no nothing.
Compared to the original sign-in implementation this seems even less code than before, especially since the on-success callback now gets a GoogleUser object with basic profile information (id, name, email, image) in addition to the access token so you don't need extra API calls to retrieve this info.

One nice thing with the new button is that it visibly changes state from "Sign in" to "Signed in". In most cases you will still want to hide the button and/or replace it with a "Sign out" button, but I think it's a nice touch.

One thing to consider is that in this basic configuration the `profile` and `email` scopes are added automatically, and some people might be reluctant to share their email if there is no apparent reason to do so for your app, in which case you would have to fall back to my basic-noprofile.html sample (see below).

2) basic-plus.html
One interesting feature they are introducing with the new sign-in is "context-awareness" of the button. Without any special scopes you get a blue Google Sign-in button. As soon as you add a social scope like https://www.googleapis.com/auth/plus.login it is rendered as a red Google+ Sign-in button instead.
This in my opinion is a huge improvement since having a Google+ Sign-in button everywhere where you only needed basic profile information without the social infos like "friends", didn't really make much sense.
I wonder if they will extend that idea to allow for example for "Connect with YouTube" buttons, but I guess this would get confusing/complicated rather quickly with different scopes being mixed, and you can always design your own custom sign-in button (following the branding guidelines).

3) basic-noprofile.html
As I wrote above `profile` and `email` scopes are automatically added to whatever scopes you define for your sign-in.
To prevent this you can set a fetch_basic_profile parameter to false, but this will result in no name/images being included in the GoogleUser object.
Since in most cases you will still need this information you will have to use an extra API call to retrieve it.
This is easy enough since (like with sign-in 1.0) all JS API client library calls will be automatically authenticated so you can simply use a people.get({userId: 'me'}) to retrieve the information. Not much extra work but I think it would still be nice to be able to "fetch_basic_profile" without the extra email scope.

That's it for now, still trying to wrap my head around how to handle some special cases and server-side hybrid implementations :)


One extra note if you are switching from Google+ Sign-in to Google Sign-in:
If you are using the "BasicProfile" the image URL will have a /s96-c/photo.jpg format and be a 96x96 image by default which you can adjust by changing the s96 part.
Via the Google+ API you get profile images as /photo.jpg?sz=50 as a 50x50 image which you can adjust by changing the ?sz=50 part or just adding another sz parameter to the end which will overwrite the other one like photo.jpg?sz=50&sz=100


#gde #opensourcecode #tutorial #googleplus #identity
Google Sign-in Samples. Basic · Basic with social scope · Basic without profile. Developed by Gerwin Sturm, FoldedSoft e.U.. Privacy: The information requested in the samples won't be stored or used for any other purposes. Cookie policy: By using the samples you agree that third-party cookies ...
10 comments on original post
4
Add a comment...

Ian Barber
moderator

Discussion  - 
 
iOS Sign-in SDK 1.0.0 is out, no longer part of the Google+ SDK. Worth a look for anyone who implemented GPPSignIn - some nice new options in there (and pretty straightforward to port). All credit to +Gus Class / +Sam Stern  for the launch!
 
The new Google Sign In iOS SDK is out, so I've written a quick post on how to use it from Swift. For people who had previously used the Google+ Sign-In SDK, its worth a look - there are some nice new methods and classes which simplify some regular use cases, which I touch on towards the end of the post. 
The new Google Sign In SDK for iOS is out! With a new version number, and separated from the old Google+ SDK, the Sign-In SDK should make it easier and faster to implement Google Sign-In in your app. Lets take a look at how t...
7 comments on original post
11
1
Ad Ch's profile photoDuc Nguyen's profile photo
2 comments
 
Zopp0pp
Add a comment...

Ian Barber

Shared publicly  - 
 
 
It is time to lower the flags to half-mast. One of the great writers of our time has left us. I've been a long time fan of his work and am thankful that his legacy will live on through his literature.
UK fantasy author Terry Pratchett dies aged 66 after a long battle with Alzheimer's disease, his publisher says
2 comments on original post
6
1
Add a comment...

Ian Barber

Shared publicly  - 
 
 
While this had been expected for a while, I am sad to say that today we lost a man who was a great artist, a great actor, and an all-around mensch. The world will be poorer without him.
In addition to acting, Mr. Nimoy directed films; published poetry, autobiographies and books of photography; and recorded music.
38 comments on original post
2
Add a comment...

Ian Barber

Shared publicly  - 
 
Very quick blog post with a note for people upgrading Firebase apps that use Google Sign In on Android.
2
Add a comment...

Ian Barber

Shared publicly  - 
 
 
I just pushed a big update to Web Fundamentals that includes new content, a new section that highlights our shows, a brand new Showcase section that includes case studies of great web experiences, and RSS feeds so you can stay up to date with all the new content.

New Content
+Matt Gaunt published a primer on Security with HTTPS (http://goo.gl/QCSujZ)
+Paul Lewis added a new section on Rendering Performance (http://goo.gl/g8pzJY)

Shows
You can now stay up to date with all of our shows, including #Polycasts , #HTTP203 , the Chrome Dev Summit, and Udacity courses at https://developers.google.com/web/shows/

Showcase
Curious how we built the Chrome Dev Summit site? The new Showcase section has you covered with deep technical Case Studies.  We also highlight great sites and apps with Spotlights. https://developers.google.com/web/showcase/

RSS Feeds
We've also added RSS feeds so that you can stay up to date all the time. Use your favorite feed reader to subscribe!
Everything - https://developers.google.com/web/feed.xml
Shows - https://developers.google.com/web/shows/feed.xml
Web Fundamentals - https://developers.google.com/web/fundamentals/feed.xml
Showcase - https://developers.google.com/web/showcase/feed.xml

#WebFundamentals  
9 comments on original post
2
Add a comment...

Ian Barber

Shared publicly  - 
 
This is very cool. If you write your Cast receiver app right, you will now be able to treat the remote as a second sender - so be able to pause and play media.

The only real work is using the regular Cast media namespace for messages (rather than a custom one) - which is the right thing to do in any case for the standard controls. You can read more about how that works on DGC: https://developers.google.com/cast/docs/custom_receiver#messages
 
Google Cast Support for HDMI CEC
We have recently rolled out additional support for HDMI CEC features for Google Cast devices.

You can now use your TV’s remote Play and Pause buttons to control media that you cast to your TV on some applications. You can also use your remote’s Exit button to stop casting an app.

We previously launched the ability for Google Cast devices to change the TV input when you begin casting.

You need to ensure your apps use the Google Cast media namespace for controlling media playback and that the media control commands are supported by the receiver app: https://developers.google.com/cast/docs/reference/messages

Your TV needs to have HDMI CEC enabled for these features to work. Follow the instructions in our User Help Center and Support Forum: http://goo.gl/J6QBDc

Note that these features may not work with all Cast enabled apps or all TV’s.

Happy Casting!

#googlecastsdk #googlecast #chromecast #androidtv
26 comments on original post
8
Stuart Axon's profile photoIan Barber's profile photo
2 comments
 
Yeah, I had similar experience. My impression is its more consistent these days (at least here!)
Add a comment...

Ian Barber

Shared publicly  - 
 
The new Google Sign In iOS SDK is out, so I've written a quick post on how to use it from Swift. For people who had previously used the Google+ Sign-In SDK, its worth a look - there are some nice new methods and classes which simplify some regular use cases, which I touch on towards the end of the post. 
The new Google Sign In SDK for iOS is out! With a new version number, and separated from the old Google+ SDK, the Sign-In SDK should make it easier and faster to implement Google Sign-In in your app. Lets take a look at how t...
6
3
Ian Barber's profile photoBeny Boariu's profile photo
7 comments
 
Thank you very much, Sir.
Add a comment...

Ian Barber

Shared publicly  - 
 
Wrote a quick post on service accounts - I've seen a few issues recently where people where having trouble with them, so hopefully will clear up some of the basics here. I've included a couple of example for Drive and Analytics, but tl;dr - Service Accounts are a virtual user and don't represent the user that created them, so you need to go through additional steps to grant them access to data in most cases.
5
1
Add a comment...

Ian Barber

Shared publicly  - 
 
 
"""Today, we are open sourcing gRPC, a brand new framework for handling remote procedure calls. It’s BSD licensed, based on the recently finalized HTTP/2 standard, and enables easy creation of highly performant, scalable APIs and microservices in many popular programming languages and platforms. Internally at Google, we are starting to use gRPC to expose most of our public services through gRPC endpoints as part of our long term commitment to HTTP/2."""
View original post
8
1
Ian Barber's profile photoStuart Axon's profile photo
5 comments
 
Good explanation, think I used gData for the last thing I did, the experience could have been better, but compared to using API from certain A* company in same project it was much better.

Fun trick of A* being to just move certain APIs between minor versions of the python library - fun times !
Add a comment...
Story
Tagline
Up in your everything
Education
  • University of Sussex
Work
Employment
  • Google
    Developer Programs Engineer, 2012 - present
  • Virgin Group
    Development Manager, 2011 - 2012
  • Ibuildings
    Delivery Manager, 2007 - 2010
  • CWT
    Senior Software Developer, 2004 - 2007
  • Iconic Games
    Application Developer, 2002 - 2004
Places
Map of the places this user has livedMap of the places this user has livedMap of the places this user has lived
Currently
San Francisco
Previously
Brentford, UK - Brighton
Apps with Google+ Sign-in
  • Driver Speedboat Paradise
  • Angry Birds Friends
Good location. Straight forward hotel, comfortable beds and reasonable size room.
Public - 2 months ago
reviewed 2 months ago
Great rooms and fantastic food.
Public - 3 months ago
reviewed 3 months ago
Great pizza and lots of tasting rooms.
Public - 4 months ago
reviewed 4 months ago
Nice rooms and service, parking not cheap.
Public - 8 months ago
reviewed 8 months ago
16 reviews
Map
Map
Map
Lovely rooms and great food.
Public - 4 months ago
reviewed 4 months ago
Good soups and sandwiches.
Public - 4 months ago
reviewed 4 months ago
Wonderful and relaxing out of the way place.
Public - a year ago
reviewed a year ago