My CPOSC 2015 Talk for Android developers.
Category Archives: Android
Resistor Decoder for Mobile
As I don’t personally own an Android Wear watch, I was jealous of my own Wear app, Resistor Decoder. The solution was to port Resistor Decoder to Android phones and tablets. It’s like a voice-driven multimeter for resistor decoding. Great for Maker types who (like me) have a ton of uncategorized resistors lying on the workbench from previous projects.
Why Android One is Great For Everyone (Not Just India)
The minimum specs they announced for Android One are surprisingly good. I think this effort will do for phones what the Raspberry Pi did for embedded systems: In the blink of an eye, the mobile industry will have to deliver much more capability for much less cost, or they’ll lose business to the low-cost offerings. This has already happened in the embedded system industry, in that any “PC board” that costs more than the Pi must set itself apart somehow, either in terms of performance or capability.
They’ve also done a great service for developers. While it’s always been possible to start developing Android apps using just the emulators (as I did in early 2009), some things are easier to test on real hardware. Well, the cost of real hardware just dropped from $350 (Nexus line) to $105.
Supporting Synonyms and Multi-Language Voice Input in Android
My Android Wear app, Resistor Decoder, takes voice input from the user. I wanted to support several ways that users could say the “same” thing while maintaining architectural support for multiple languages. Continue reading Supporting Synonyms and Multi-Language Voice Input in Android
Play Store, Android Wear, and Internationalization
Here’s a quick internationalization tip for managing your Play Store assets for Android Wear apps:
1) Run your app in a Wear emulator paired with a physical Android device.
2) One by one, go to each “screen” in your Wear app that you want to show in the Play Store entry, and perform step 3 for it.
3) For each supported language, change the input language on your Android device (via Setup -> Language & Input)
4) Take a screenshot of the emulator window, and save it with an appropriate name.
5) Repeat #3 until all languages are represented for the given screen, and repeat #4 until all screens are represented.
The magic of this technique is that the Wear emulator will switch languages along with the Android device, so you only need to navigate through your Wear app once to get screenshots for all supported languages.
I wrote an Android Wear app called Resistor Decoder. It lets you speak the color bands of a resistor into your Wear watch to get the resistance and tolerance value. The usage scenario is for someone who does electronics tinkering and ends up with a bunch of resistors lying on the table.
Amazon Fire Phone
Amazon just announced the Fire Phone, a mostly average phone running their broken version of Android. There isn’t much it offers that other phones couldn’t do with some third-party software installed, but here’s what I’m excited about.
As you can see, it has four front-facing cameras. Forget about why they put those cameras there, since it’s a gimmick, but here comes the cool part. If you’ve made video calls, you know that you can either choose to make eye contact with the other person by looking in the camera (which is nice for them), or you can look into the eyes of the person on your screen (which is nice for you), making it seem to them as if you’re looking at their throat. You have to make this choice because you can’t put a camera where the person’s eyes are without drilling a hole in your screen.
However, with four cameras, you can derive a virtual camera that is where the person’s eyes appear on your screen, meaning you can look into a person’s eyes on your screen and they see this happening, too. The only unknown is whether or not the CPU or GPU in a phone would have the power do to this.
App Permissions in Real Life
You’ve gone to the local county fair. You want to play the game where you throw darts at a balloon to win a prize.
First, however, you have to tell the vendor your phone number and give him the contact info of everyone you know. You also agree that the vendor can find out precisely where you are in the future, whether or not you’re playing the game.
Of course, this sounds so very reasonable, so you agree.
When you’re done playing, you walk away from the booth, but the vendor still has your phone number and the full contact info for you and everyone you know. If you decide never to go back, he won’t be able to know where you are anymore, so there’s that.
A talk for CPLUG’s 2012/03/13 meeting. Covers concepts, terminology, and process involved in flashing new ROMs on your Android hardware.