One of the most starred Android issues of all time, currently #20 of 21363 from the top with 1191 stars, is the absolutely awful quality of synced contact photos (issue #3870, opened in 2009). ICS attempted to resolve the issue by bumping the quality to 256x256 pixels, but Google sync would without mercy squash it right back down to blurry pixel dirt (96x96).

To recap, there are actually a couple of issues:

Contact photos set in Gmail.com are downsized to 96x96. That continues to be the case, and this isn't really even an Android problem - it's up to the Gmail team to fix it. 3 years later and roughly 8 months since ICS was announced, it hasn't. If the next bullet point at least worked the way it should, I wouldn't have had as big of a problem with this issue, but it still doesn't. Read on to figure out what I'm talking about.

Contact photos set on Android can be 256x256 starting with ICS, except in ICS they still get downsized when syncing to Gmail.com and other Android devices, rendering them absolutely useless. This basically means that they're stored locally. If Google could only solve this problem in Jelly Bean, we could at least start setting our contact photos from Android, so long as they're not clobbered when syncing to new devices or when syncing other contact fields back from Gmail.com.

Note: There was one very welcomed improvement in ICS that sucked hi-res photos into Android automatically for contacts with associated Google+ accounts. This helps tremendously, but is more of a temporary workaround for both of the above. Additionally, it's part of the stock People app's functionality, so Sense and other OEM replacements don't benefit here. I thought I'd point this out, since it is indeed a noticeable improvement - just fire up your ICS+ device and start clicking contacts with G+ accounts. You'll see their images go hi-res and clear in front of your very eyes.

The Test

In Jelly Bean, contact photos can go as high as 720x720, and I've observed an improvement - contact sync from one JB device to another preserved the high resolution photo. Both devices (Nexus 7 and Galaxy Nexus running JB) were showing the same hi-res image, while an ICS tablet (Transformer Prime) got a low-res image:

And Theeeen?

Could that mean that issue #2 was really solved in JB?.. At first, that's exactly what I thought. I even updated a few metadata fields that belonged to the same contact and observed no change in photo quality. This right there is already a huge improvement over ICS. So, case closed, right? Wrong.

And then I removed the Google account from the Galaxy Nexus and re-added it. I waited for the sync to complete. At this point, something I could not have predicted occurred. Would you like to take a guess? Maybe even two?

Alright, I'll tell you. The Galaxy Nexus running Jelly Bean no longer had a contact photo. At all. The photo on the Nexus 7 went from hi-res to low-res. How's that for a curveball? I've run the same test a few times, and the result was the same every time. Here, zoom in if you want:

Conclusion

So Google sync now correctly syncs hi-res photos between Jelly Bean devices, the changes are not permanent, and the whole thing is a terrible mess. Eventually, hi-resolution photos end up clobbered with low-res garbage. There was a lot of commotion around the quality bump in Jelly Bean, but it seems like Google still hasn't fixed the fundamental issue, and the self-destructive behavior continues. It's possible that once every device moves to Jelly Bean, this will stop happening, but I believe it will take a lot more effort on Google's part to make sure that doesn't happen first.

I have a few ideas on what goes wrong behind the scenes, but the exact technical reason really doesn't matter - Google contact photo sync is still a clusterf$%^#, even with Jelly Bean. It's a shame, really.

Comments

Clearly you don't. But many others do. It's one of the top upvoted Android bugs.

edwardabarilla

If you don't care, good for you. But not 100% of people are like you, kid. ;)

infernalpudding

As far as who cares, it seems that at least the 1,187 people who have starred it on the Android issues page (linked in Artem's article) care. In my view it comes down to a matter of polish. We've long accepted that Android can be rough around the edges at times compared to the slick iOS, but as Android continues to mature and improve, such longstanding bugs begin to stick out like a sore thumb. It results in a less than an ideal experience, particularly given the beautiful HD screens that many of us have.

Don't get me wrong - I'm an Android user and love it. I just think that android, having come so far, would ideally be 'above' such a silly bug persisting given that it has supposedly been fixed. (Note: when I say silly, i mean from the user's perspective. I'm sure there are some difficult issues at play in actually resolving it)

ericl5112

I'm not so sure it's that difficult. Even a 720x720 picture is tiny. The Jpeg ~1-200kb. The contact picture is obviously getting these images from a local directory. Make 2 directories. A low res synced directory, and the high res, made from the local device. Check if there is a high res photo, set it. If not, set the low res photo.

I don't deal with the file management API's much, but that is either working code (minus the setting contact picture part, which they already have done), or a stone's throw from it. When a contact picture is added from device, it's another 2 or three lines of code to copy a 96x96 version into the gmail synced folder. It won't sync high res images between devices, but it will stop google contacts from destroying it. I get the feeling they don't care much.

*not the real directory, I don't know what it is. Again, google knows, would take them 3 seconds to change that.

fixxmyhead

dude i care cuz i got my girl in a g string and i love looking at that

So long overdue. I was thrilled to see the quality bump in JB and truth be told, I've noticed a big difference in my day to day use of JB since. All of my contact images look solid and clear. But the proof is in the pudding right here. I wish we could just put this one to rest for good. So silly.

You can't respond - the topic is closed. However, you can +Vic Gundotra and ping him about it.

Danny Holyoake

I vote we all do that. I've done it.

Stephen Diniz

I re-enabled comments today after Andrew Bonner messaged me about some changes to JellyBean..

Stephen Diniz

By the way, if we can get this thread in Google+'s What's Hot (or Explore) section, maybe it will get more attention in Google's eyes!

Nobody

$1000 says it's going to be fixed when G+/Gmail contacts reduce all further overlap and redundancy.

thilden

Sad to say but it's small things like this that strike a stark contrast between what is acceptable by Android in contrast to iOS standards. Other pet peeve being, of course, general UI fluidity, which has taken Google until JB to get properly addressed.

ReBoot

Well to be fair gingerbread has more features and options than iOS 6 so it really comes down to which company is refining and improving their shortcomings at a faster rate.

Is iOS adding all the missing features quicker, or is Android making the UI better looking and smoother quicker?Thats what i think is the stark contrast between who is focused on innovating, and who is playing catch up.

Haxsync in the android market solves this for a dollar. I have been using this since the SDK versions of ICS and he is continually updating it. It also syncs your facebook events too. Great littel application for an issue that should have been solved by google a long time ago.

Nuno Fernandes

Is there an option for hand picking the contacts? I don't want all my Facebook contacts on my phone.

hes any one tried to report this to the gmail team? after all, all they need to do is just bump the limit for 96X96 to 720X720 or even higher.
i dont see what is the problem there? the space it will take on their hdds? bandwidth?

Yes, people have tried reporting it to the gmail team. They just don't care. Also, that can't be the problem, considering that they've supposedly allocated [however much it's at now] GB of storage space for each individual user's inbox.

Yes, people have tried reporting it to the gmail team. They just don't care. Also, that can't be the problem, considering that they've supposedly allocated [however much it's at now] GB of storage space for each individual user's inbox.

Uthor

Yeah, considering most people don't use 100% of the space Google gives them, it seems like a bit of a waste reserving all that space for every single person. It's like banks not having 100% of everybodies money on site since it's unlikely everybody will need all their money at the same time. I bet Google has only as much space as is actually being used plus a bit of overhead.

Yes, people have tried reporting it to the gmail team. They just don't care. Also, that can't be the problem, considering that they've supposedly allocated [however much it's at now] GB of storage space for each individual user's inbox.

Jon Garrett

I want high rest contact full screen caller ID photos !!!! and no I don't want no stinking 3rd party app cause I tried them all and none of them work the way they should--I want this feature built in.

Is there a way to manually associate a contact with ANY Google+ account?
If yes, we can create dummy Google+ account and set with high-res photo.

The thing that I don't like to sync with Google+ and any other social network because not all people put contact photo the way I like!

Anyone know who to contact within Google GMail Contacts team? Probably we can start ping and ask them?

Or is there any Google+ account or pages for Google GMail Contacts team?

Last, any developer who often hangout with Google Android Developers Hangout on Google+? Probably they can directly ask to +Reto Meier or any other Android Developers relation people.

This is insane. If you check, you can trace this issue back to 2008!!!

Or should we campaign in Google+? Make a post and tag +Vic Gundrota and + #AndroidLowResContactSync

Geez ...

silo

Whether 256 or 720 res, now all my contact pictures from GB are pixilated & ugly when calling the person (e.g huge across the screen). If Google thinks I am going to retake all the pictures, then I shall buy an iPhone.

ewlung

Any way we can spread this news to other Android and gadget news sites?

The Verge, Engadget, Phandroid, Android Central, SlashGear, etc.?

Phreqd

I'd like to find out how to get pictures back from Gmail when they've been set as contact pics. I lost a phone over a year ago and would like to get some of my pictures used as contacts back.

nxtiak

Can't, and why? Gmail contact pictures are saved on their servers as 96x96 pixel photos, they're crap. That's why I personally have a "Contact Pictures" folder up on my Picasa, and saved on my phone, and I update it once in a while and use that to change people's photos.

D4niel

This appears to have been fixed in Jelly Bean. Today I'm seeing contacts that I've never set an image for (so, it's using their image) being updated with high-resolution versions. It seems to happen when I view them in the People app on my Galaxy Nexus with Android 4.1.

It doesn't seem to be. Looking at the contact for someone that has one photo for their Gmail, and a different photo for Google+ shows me their Gmail photo, not the Google+ photo.

nxtiak

It's still not fixed. Google Contacts Sync still fuggs up.
Reset your phone, add your google account, pull up the people app, pick a person and you'll see their crappy photo, and if they have a G+ account, wait a few seconds, then BOOM their better picture shows (or different picture shows) and then their status updates shows to the right of the photo.

I have had the same problem. I wish they would just change Gmail to 720X720.

ilangoadigal

The app HD Contacts is another way to automate setting hi-res pictures from Facebook or from your phone. Works really well, you can take pictures of your friends, set the filename as their name, and it will automatically set it as their contact image.

maikfrantz

What I don't understand: If it is Gmail that plays the bad role in the picture size affair - why does Gmail not downsize the contact pictures when syncing with Jelly Bean devices? Does it distinguish between JB sync and ICS and below sync? I thought that Gmail would generally fix this issue for good when JB was released. Can somebody enlighten me?
Thanks.

jellybeanuser

Google contacts (google.com/contacts/) is still scaled permanently to 96x96. As far as I'm concerned, the "improvements" related to this issue in 4.1 are irrelevant until this is changed.

I guess
another option which is bothering me is YT offline option… whey the heck Google
can’t add the option to selectively choose which vid to download? It’s beyond
me. I don’t want to download dozens of vids on my “Watch Later” list just to
watch offline but only chosen ones…
There is no indicator showing that videos
are being cached or downloaded… bummer

Great
article by the way… Google should shape up and DO something about all this
quirks and faults, simple stuff like – Google Play don’t remembering position
in search list or small pics in contacts is simply outrageous… mildly saying…

Casey Anthony

I use to manually link phone contacts & google contacts to avoid this problem. It took soooo much time because even after importing phone contacts the images would get downgraded I would have to go back and redo everything it would take hours. Not anymore I use HD Contact Photos from the market. (get the donate version for $2) Then make sure all your high resolution file names are the same as your contacts. If your rooted (I am) you can go as high as you want. The app will auto apply all pictures after a flash or resync in about 30 seconds. Reboot the phone and your good to go. I got so sick of waiting for google to fix it, it's completely unacceptable. Once again devs step up to the plate.