Detect whether users have uploaded a profile picture to Google+

In: googleplus

08 Aug 2014

Very short post on a small feature that I know will be a popular one with some people! A regular feature request has been the ability to determine whether the profile picture with a Google+ profile is the default blue head or not. You can do that right now with the people.get API calls - and you can try it yourself from that page using the explorer.

Google Sign In with Server Side Auth on iOS

In: ios, googleplus, identity

06 Jun 2014

The release today of version 1.7 of the Google+ iOS SDK added the ability to authorise both a client and server for access to Google APIs. This has been a feature for Android and Web based sign-ins for a while, and now is available across all three platforms. This should simplify server side code for people who have been building cross platform apps - for example if you need to retrieve profile information on the client, but retrieve circles on a server for a friend finding feature.

Migrating from PlusClient to GoogleApiClient

In: googleplus, android

02 Feb 2014
Thanks for reading the blog! This post is pretty old, and the APIs it references have been improved upon significantly. If you're interested in authentication check out the new [Google Sign In](https://developers.google.com/identity/sign-in/android/), and if you're looking to access profile data see the [People API](https://developers.google.com/people/).

Choosing a Google identity scope

In: googleplus, identity

01 Jan 2014

Incremental Auth and YouTube scopes

In: youtube, oauth2.0, googleplus

12 Dec 2013

In my previous post I mentioned that there are two issues which have been made more visible by incremental auth. The first of these is fairly straightforward, but the second is a little more subtle. Incremental auth is a great feature for simplifying the consent screen that users see when they first sign in to an app, but it can also introduce a bit more complexity in some cases. An example of this is when requesting access to YouTube.

Are you using approval_prompt=force?

In: oauth2.0, googleplus, identity

12 Dec 2013

The recent launch of incremental auth has highlighted a couple of problems in the way some sites have implemented Google+ Sign-In or Google OAuth 2.0. The most obvious of these is that there are a fair number of places that use approval_prompt=force much more often than they should, which leads to a much worse user experience than there needs to be.

Launch All The Things!

In: googleplus

12 Dec 2013

Seamless Sign-In Across Devices

In: googleplus

12 Dec 2013

Google+ Sign-In on the Android Chromium WebView

In: googleplus, android

12 Dec 2013

Google+ Sign-In: Page Level Configuration

In: googleplus, javascript

11 Nov 2013

Using Google Services To Grow User Retention

In: googleplus

11 Nov 2013

User Sign-In Status In Javascript

In: googleplus, javascript

11 Nov 2013

Improving Sign-In Implementations

In: googleplus

11 Nov 2013

Saving App Config To Google Drive

In: googleplus, javascript, drive

11 Nov 2013

Triggering Google+ Widgets From Javascript

In: googleplus, javascript

10 Oct 2013

Google+ Android Client & Server Sign-In

In: googleplus, identity, android

10 Oct 2013

NOTE: This blog post is pretty old! Take a look at a much better way of getting an authorization token or check out the official Google Sign In documentation for a more up to date (and easier!) choice.

Google+ Demographics in Google Analytics

In: analytics, ios, googleplus, android

10 Oct 2013

Crouching Sharebox, Hidden Android

In: googleplus, android

10 Oct 2013

With all the share box related things happening over the last week or so, I realised there are a couple of non-obvious parts of the Android PlusShare class which might be of interest to people.

Attaching images to Google+ shares on Android

In: googleplus, android

10 Oct 2013

Google+ iOS SDK 1.4.0 with native sharing

In: ios, googleplus

10 Oct 2013

Google+ client changes in Google Play Services 3.2

In: googleplus, android

10 Oct 2013

Google+ Sign-In Localisation

In: ios, googleplus, javascript, android

08 Aug 2013

Testing whether a user is signed in to Google

In: oauth2.0, googleplus, javascript, identity

07 Jul 2013

Google+ Sign-In & Multiple Applications In The API Console

In: console, googleplus

07 Jul 2013

Who Are You Anyway?

In: youtube, googleplus, javascript, nlp

07 Jul 2013

Common Issues With Google+ Sign-In On iOS

In: ios, googleplus

06 Jun 2013

Deeplinking Into The Google+ Apps

In: ios, googleplus, android

06 Jun 2013

Google+ iOS SDK 1.3.0

In: ios, googleplus

05 May 2013

Batching calls to Google APIs (Javascript)

In: googleplus, javascript

04 Apr 2013

Common problems with Google+ Sign-In on Android

In: googleplus, android

03 Mar 2013

It has been fantastic to see so many people trying out Google+ Sign-In, and through the bootcamps and other events I’ve had a chance to talk to some people who are actually implementing it in their apps. The Android integration is pretty straightforward, thanks to Google Play Services, but there are still some issues I’ve seem come up a couple of times.

Postmessage & OAuth 2.0

In: oauth2.0, googleplus

03 Mar 2013

As part of the release of Google+ Sign-In, some people have noticed that signing in via the Sign In button doesn’t redirect them to Google, then back to the site, as would have happened if they’d been using the basic OAuth 2.0 flows.

Programmatically Scheduling Hangouts

In: googleplus, hangouts

11 Nov 2012

One pretty common request around Google+ hangouts is the ability to programmatically schedule them, and have a URL which everyone can join in the future. This is useful for being able to send out links beforehand, and make sure people are ready to go.

Google APIs Java Client Library from Clojure

In: clojure, googleplus

11 Nov 2012

At Devoxx the other week I spoke about Clojure, and as an example looked at how it could be used to access the Google+ public data API. Because the Google+ APIs are part of the general Google APIs Discovery Service we looked at how to process and generate functions to call this library automatically (more on which in later blog posts). However, for use now the easiest way to access any Google API via Clojure is probably via the Java client libraries using the Java interop in Clojure.

Vanity Metrics in Social Media

In: social, googleplus

09 Sep 2012

I was reminded of one of my pet social peeves as part of a conversation with one of the, astonishingly smart, Google interns. One of the most challenging aspects of social networks is that, broadly, people within companies don’t really know what “doing a good job” looks like. Depending on the organisation, social media can be part of marketing, PR, customer service, a specialised department, even IT. The aim of these departments is often mis-matched with the potential or the audience the brand has across their social media, so it is difficult to create effective performance measures.

Retrieving Comments From Google+ Events

In: googleplus, rest

08 Aug 2012

Had a question earlier about whether it was possible to retrieve comments from an event on Google+, and the answer is yes! As long as it’s public, you can grab it via the REST public data APIs.

Google+ History Is Your Oyster

In: googleplus, history

08 Aug 2012

The History functionality in Google+ is an interesting answer to a pretty common question of “where’s the write API?” It allows creating moments in a user’s (private) history, which can then be reshared. It’s currently in developer preview, for the express purpose of getting feedback on the API. 

Notes: Sharing to Google+ on IOS

In: ios, googleplus

08 Aug 2012

It has been a long time since I touched any IOS code, so I was quite looking forward to a chance to do some when the IOS team within Google+ released the SDK into preview at Google I/O last month. Luckily, the documentation on the SDK page on developers.google.com is excellent, and covers the basics of the setup, but in part because I’ve forgotten almost everything about XCode and IOS, I thought it best to just write down what I did and what I encountered, primarily as an Aide-mémoire for the future. Anyone building a new app should follow the documentation - but perhaps some developers will hit an issue I did and get something out of this post!