What
 · Technology
 · · Android

Sensplore · I’ve been working on some ideas for clean-screen apps; instead of controlling them with the touch screen, you wave your device around or tap it or shake it. To do this, I’ve been learning about the output of the sensors you find on Android devices. I’ve found that the documentation, while complete, contains some scary-looking math and assumes you know more about quaternions and rotation vectors than the average developer. Well, more than I do ...
 
Sensor Kinetics Pictures · Recently I’ve become interested in the sensors that live inside Android devices, and how to use them. It turns out that interacting with them is a little on the non-obvious side, as is interpreting the read-outs. So I drew some graphs. [Update: The graphs were wrong. So I deleted them. But I’m about to post a better version.]
[3 comments]  
A Million Lives Saved · Well, not really. But my LifeSaver 2 app has now uploaded over a million calls and messages for a temporary stay in the cloud and (in theory) transfer to other devices. This is not as impressive as it sounds since the number of unique users is still just a few hundred; but it pleases me nonetheless. I observe that the number of downloads is quite a bit smaller; it seems that people upload, and then it takes them longer than they thought to get their new device brought up and LifeSaver installed; long enough for the cloud scrubber to have erased their upload, so they have to do it again ...
[4 comments]  
Undocumented Territory · What happened was, there was an irritating little bug in my LifeSaver app. Which turned into a real problem, since I was using an undocumented API. The story of the bug’s death might be useful in giving a feeling for the 21st-century open-source world ...
[1 comment]  
LifeSaver 2.0 · Way last fall, I took my old LifeSaver app and re-wrote it to store histories in Google App Engine back-end as opposed to the SD card, mostly because lots of modern phones don’t have SD cards. Then I had an attack of fear about deploying it, then I went on a world tour and got sick and took vacation and got distracted. I just published LifeSaver 2.0 ...
[7 comments]  
Safe Unlocking · There are a bunch of ways to unlock your Android device. More or less all devices support swipe, pattern, PIN, and password. Which should you use? ...
[16 comments]  
Mobile 2011 · What a year. I’ve been doing technology for way more than half my life and some other times have been as intense but nothing I remember combines speed and scale like the last twelve months. How about a year-end survey? ...
[7 comments]  
Bar Android & Twicca · On Monday nights, this funky little teeny second-floor bar in Shibuya becomes Bar Android, a gathering place for Android geeks. This last Monday, which was Hallowe’en, I went; what a blast, and I got a new Twitter client ...
[10 comments]  
Up and Back · There’s been a mini-flurry of debate on the Android Back button, with Christoffer Du Rietz arguing that it’s harmful and broken, and a small chorus of the usual Android-hater suspects chiming in. Steven Van Bael pushes back. There are interesting subtleties here ...
[11 comments]  
ICS and the New Nexus · I’ve been carrying the Nexus Galaxy (let’s say “NG” for short) around for weeks, watching Android 4/Ice Cream Sandwich (let’s say “ICS”) come together. It’s a pretty nice phone. Size matters. But software matters more ...
[15 comments]  
Android App Engine Client · Recently I wrote a scary App-Engine back end for an Android app. I wanted it to be secure, which should be easy because Androids have Google accounts and App Engine knows about those. I got it to work, but the process irritated me enough that I decided to package it up as a public service. So now there’s a little open-source library called App Engine REST Client. It offers GET and POST methods, includes an Authenticator class, and tries to be as simple as possible to use ...
[4 comments]  
Cloud Lifesaving and Fear · Last year I built (and of course blogged) this nifty little Android app called LifeSaver, which would copy your telephone-call and SMS logs onto an SD card, so you could move the SD card to another phone, run LifeSaver again, and get ’em all back. Calls and texts aren’t migrated by the excellent Android backup system ...
[26 comments]  
Use the Source! · I’m working on an Android app and the documentation didn’t stop me making a stupid mistake. If it weren’t open-source, that might have been a problem ...
[14 comments]  
Current Dessert Snapshot · It would have been better with a blue sky, but still a cheery sight ...
 
Xoom With Honeycomb · I’ve been dogfooding one since December, through ever-so-many builds of Android 3.0. I’m way too close to this story to write what any sane person would call a “review”, but I can share some impressions ...
[8 comments]  
Android Constructors · At the Honeycomb event today, I was immensely pleased to hear both Andy Rubin and Chris Yerga shout-out to the engineers; Andy followed up on Twitter. I just wanted to say that I’ve been in this business coming up on three decades, and had the pleasure of working with many software legends. The Android platform team is the most accomplished I’ve ever been close to. Not just by a little bit, either.
[3 comments]  
Nexus S with Gingerbread · I’ve been carrying the new thing around for a few weeks now, and had fun taking pictures of it ...
[7 comments]  
What Android Is · Being an illustrated run through the basics ...
[22 comments]  
Tab In My Pocket · Friday afternoon, September 9th, Fedex brought me my Samsung Galaxy Tab, and from here on in let’s just say “Tab”, which I predict everyone will too, and may represent mad product-naming skillz from Samsung. Since then it’s been in my pocket and living room ...
[28 comments]  
Nexus One PUK Unlock · Unless you found this article using a search engine, which means you’re probably having the same problem I did, you’re very unlikely to be interested in its solution, so you can stop reading now and get on with your life ...
[3 comments]  
Galaxy Tab · So, there’s a new kind of Android device in the world. The world still isn’t sure just where it is that tablets are the right tool for the job. That granted, this is a nifty product. And I’m developing my own theory of what tablets are for ...
[21 comments]  
Tethering · I travel quite a bit, and I have found that the “tethering & portable hotspot” facility in Android 2.2 is just absolutely wonderful. It has saved me considerable money and got me reasonably-good connectivity in places I wouldn’t otherwise have had it; I’m looking at you, big-name US hotel chains ...
[19 comments]  
Late Summer Tech Tab Sweep · Some of these puppies have been keeping a browser tab open since April. No theme; ranging on the geekiness scale from extreme to mostly-sociology ...
[2 comments]  
Small Airport Victories · Two of them in the last couple of days, both courtesy of having the Internet in my pocket ...
[1 comment]  
Other Android Languages · I’ve been having this same conversation with a variety of programmers in recent days, and so I ought to share it with the world. I think it would be nice if you could build Android apps in other languages. The leading candidates seem to be Ruby and Python. People are working on it. This is my take on the state of play ...
[32 comments]  
Indie Android Interview · I was doing “Office Hours” at Google I/O, and this guy walked up with a question and we got to talking. His name is Derek James of Polyclef Software; he comes from a different planet from the one this Web guy has been living in, one where Psychology Ph.D. candidates build actual real businesses, starting part-time, via single-handed mobile-device programming. I did an email interview with him ...
[9 comments]  
Windy · Canada has long been a telephone oligopoly: Rogers, Telus, and Bell Canada; Canadians generally feel that prices are high and service only so-so. Now we’ve got a new mobile player, Wind Mobile. I signed up as soon as they got to Vancouver, at least in part for reasons of ideology; competition is a good thing. So far, Wind looks like a good thing too ...
[4 comments]  
Compatibility and Fragmentation · Over on the Android Developers’ Blog, we just published On Android Compatibility by Dan Morrill, who manages both the Open-Source and Compatibility work here ...
[3 comments]  
Practical Open Source · Android is an open-source project, which has a bunch of cultural and economic consequences. I’m going to ignore those today, and describe how I use the source code to get work done ...
[23 comments]  
Private APIs · I wrote a post in the Android-Developer blog today cautioning about the use of Content Providers that aren’t part of the published Android API. John Gruber pounced, deducing that, contrary to our stated policy, this constituted evidence of “private APIs”. Let me explain exactly what’s going on here ...
[31 comments]  
Blogging at Google · First of all, I should announce my editorship (starting today) of another blog, the Android Developers Blog. But at Google there are stories behind the stories ...
[8 comments]  
LifeSaver Lessons · I can’t possibly do this job unless I get my hands dirty with Android technology, and then keep them that way. To start this process I just wrote a little utility app called LifeSaver (source here), which scratches one of my own personal Android itches. It’s in the Android Market and maybe someone else will find it useful. I think the lessons I learned in the process are more interesting and useful than the app itself ...
[19 comments]  
That Iterator Again · Last week I wrote Content Provider Iterator, which simplifies the task of dealing with Android’s Content Providers. Reto Meier, the author of what is currently the best Android developer book, got all nervous about my approach. He’s got a point, but so do I ...
[12 comments]  
A.D. XV: Content Provider Iterator · Being a small morsel of Android-specific geek entertainment involving an example of the kind of thinking that being a Rubyist provokes which however may be grievously wrong.

[This is part of the Android Diary.]
 ...
[11 comments]  
Essential Advice · The fact that this isn’t posted on developer.android.com is a bug, I’d say. If you’re going to be doing any Android programming, you really need to get Reto Meier’s Professional Android 2 Application Development. Yeah, he works for Google (same group as me) so I’m prejudiced. Whatever. For the moment, Reto’s book is the Bible.
[3 comments]  
An Android Side Project · I want to be able to write apps for my phone in in something other than the Java language; for example Ruby or Python. This isn’t one of the things my group at Google has asked me to look at, but I think it’s worth doing and worth some of my time. I’m writing this today because I’m amused by the contrast with the current hubbub over Apple having tightened the developer thumbscrews ...
[53 comments]  
Nexus One on Android 2.1 · That’s what I’ve been carrying around for a month and a bit. It’s awfully good; which doesn’t mean I don’t want more ...
[18 comments]  
Being Kind to the Cat · What happened was, a few days ago I wanted to try out some fancy language technology on Android. A cat got in the way but the WiFi saved the day ...
[7 comments]  
author · Dad · software · colophon · rights
Random image, linked to its containing fragment

By .
I work for Google, but the
opinions expressed here are
my own, and no other party
necessarily agrees with them.

A full disclosure of my
professional interests is
on the author page.