Kitchen Hacker

RSS

Building Android 4.0 on Ubuntu 11.10

haseman:

staff:

Tumblr Android 2.0: Now available on the Android Market
Android users, say hello to the new Tumblr app, rebuilt from the ground up! We hope you’ll enjoy the updated features, including:  
New interface: A total redesign centered around Android’s hardware and software.
Manage multiple blogs: It’s now a simple swipe to access your different blogs and manage your drafts, queue and followers on-the-go.
Create a post:  We’ve highlighted posting to Tumblr so you can share text, images, links, chats, quotes and videos whenever you want.  
Messages: View and reply to messages for each of your blogs.
Address book: Find people to follow from your phone’s address book.
New users: Sign up right from the app.
Bonus: For quick sharing, you can post anything from your home screen via the Tumblr widget.
Go ahead and grab it on the Android Market!

A big thank you to Jason for all his hard work on the app and Peter for making it look so very fine.

haseman:

staff:

Tumblr Android 2.0: Now available on the Android Market

Android users, say hello to the new Tumblr app, rebuilt from the ground up! We hope you’ll enjoy the updated features, including:  

  • New interface: A total redesign centered around Android’s hardware and software.
  • Manage multiple blogs: It’s now a simple swipe to access your different blogs and manage your drafts, queue and followers on-the-go.
  • Create a post:  We’ve highlighted posting to Tumblr so you can share text, images, links, chats, quotes and videos whenever you want.  
  • Messages: View and reply to messages for each of your blogs.
  • Address book: Find people to follow from your phone’s address book.
  • New users: Sign up right from the app.
  • Bonus: For quick sharing, you can post anything from your home screen via the Tumblr widget.

Go ahead and grab it on the Android Market!

A big thank you to Jason for all his hard work on the app and Peter for making it look so very fine.

Simple & Painless Way To Do Android Database Development

The kicker……on an unrooted phone.

In order to work with the Android database in DDMS or on the cmd line, you need to have root access to your phone. Up until now, doing any kind of work in the database realm of Android has been extremely painful for me because I cant access the DB on a running device, but I can access it on an emulator running my application. Anyone who has done any android work knows that dealing with the emulator is a whole world of slowness, spinning wheels, and pain (the details of which I wont get into here).

So I have been toying with the idea of rooting my Nexus S in order to gain this root access. However, there are a lot of reasons why you might not want to root your phone, so I also spent a lot of time searching for an alternative. Finally I was at the Android Developer Labs (Thanks @androiddev), where I had a chance to talk to some fellow android developers. I explained my problem and one of the developers told me that he and his partner wrote a script that would dump the SQLlite DB to the SD card on startup of the app. So I decided to run with it.

Some things to note aobut how and why I wrote this:

  1. The SD card contents are not sandboxed to your app, so I only allow this ability in debug (read:dev) builds. 
  2. I did not want to dump the DB on every start up, moreover I wanted the ability to take a snapshot anytime.
  3. I have been trying to find innovative ways to put dev functions into our app.

I wrote three parts to make this work. First I created a *DEBUG* section of our settings menu. A <PreferenceCategory> that sits at the top of our <PreferenceScreen> and when I inflate the Preference screen I check our Constants class to see if the app is a debug build, if it is not, I immediately dispose of the debug category. Now I have a home for any functions that I want to have and test. For instance, sometimes you might want to test firing a service at any given point in your app lifecycle, this is now a good place to host that from.

Second, I wrote a small AsyncTask that runs on a background thread to grab the path to the current database, generally found at /data/data/database/{packageName}/databases/{databaseName} and copy that file over to the SD card using a couple of helper classes and functions.

Third I wrote a small DBHelper function and a small FileIOUtility class that create a copy File of the current database (checks to see if it even exists first), and then writes that exact file to an app location on the SD card. For my purposes I’m using the same location where our ImageManager stores any local photos we have downloaded. or /mnt/sdcard/{appName}

And that’s it really, now I can have my application running on my test device, unrooted, but still dump the db so that I can explore it using some DB tool or just the sqllite cmd line tool in the SDk. A simple problem that was a pain to deal with before.

Not quite the same reasoning as my rant. But likely more valid. &lt;3 XKCD

Not quite the same reasoning as my rant. But likely more valid. <3 XKCD

Android developers (or mobile devs in general) -
Is there an acceptable amount of user sessions that can experience errors? I am looking at about 98.5% of sessions experience 0 errors and obviously I want to bring that number higher. But I am curious about other mobile devs experience and what might be considered industry standard.
thoughts?

Android developers (or mobile devs in general) -

Is there an acceptable amount of user sessions that can experience errors? I am looking at about 98.5% of sessions experience 0 errors and obviously I want to bring that number higher. But I am curious about other mobile devs experience and what might be considered industry standard.

thoughts?

Review & Rating Systems Suck [rant]

I have always felt that reviews and ratings are meaningless. In my experience, whenever I leave a review it is because I either had the most amazing time in my life or it was the worst experience ever and I would never wish that upon any other living creature. I’ts only natural for me to believe that others act in the same way. 
The system is broken because you never get a normal opinion of the subject. This week, Hashable has been featured on the Android market and I have to say that I am pretty surprised at all of the positive reviews. Not because the application doesn’t deserve them *pats back*, but because of how broken the Android Market (and any) review and rating system is. I’m hoping that some startup can swoop in and disrupt the process and actually make it meaningful. Until then I’ll stick with Foursquare tips (for restos) and first hand recommendations.

Swedish Meatballs &amp; Pickled Herring 18 ways @ Smorgasbord

Swedish Meatballs & Pickled Herring 18 ways @ Smorgasbord

Jul 5

Google IO Android Videos

Since going to Google IO in May, I have been trying to find time to go through all of the Android presentations that I missed while I was there. The presentations are a really great way to review the concepts that were new and also to pick up on any little tidbits you might have missed. I have been making a point to watch one or so a day.

Here’s a couple of play lists that has all of the Android Developer videos from Google IO 2010 & 2011. I deliberately created the order for this playlist from “most to least useful” (to me) and they are generally intended for advanced devs :