WordPress for Android

The WordPress folks put out a new release on the Android market a few days ago. The new version seems to be working great thus far with the WordPress 3.0 install I’m running now. There’s a setting in the Settings/Writing area you need to check to enable XMLRPC to get it working initially, but it’s pretty trivial.

From what I can tell, the stats feature might only work with WordPress.com accounts (or maybe I need a plugin I don’t currently have installed to get it working). But everything else I’ve tried so far is working great. The previous release added video upload and geotagged posts. Quite a list of features and capabilities there.

If you’re on your device you can pop it up in the Marketplace using this link.

Posted in Applications | Tagged , , , | Leave a comment

How To Unlock and Root a Nexus One

I have a Nexus One that I’ve been fooling around with. It normally doesn’t have a SIM in it, I’m just using it to fool around with. So I’ve muddled my way through installing Froyo on it manually and taking it through a few updates. Generally I’ve been brute forcing my way through the processes based on following forum posting after forum posting.

Finally tonight I took some time to actually search around some and try to find “the right info” to get a rooted version of a custom firmware onto the device. The wiki area of the Cyanogenmod site is definitely the right place to go. They have some “Full Update Guides” linked from the front page which walk through step by step the different processes you need to go through, including a process for installing a Cyanogenmod firmware starting from a stock Nexus One. Exactly what I was looking for. It walks you through all the complementary processes too, like unlocking the bootloader and installing a recovery image.

I went with the stable Cyanogenmod release, so I’m slightly downgraded in terms of the Google release this bases off of. But there’s a bunch of capabilities in the new recovery image as well as root access to weigh that against… and right now root access is definitely winning.

Posted in Tips | Tagged , , , , , | Leave a comment

Downloading Marketplace Info

One of the annoyances of the Android Marketplace (for developers at least) is that there’s no easy way to get the info to use in your own applications. Fortunately some folks have reverse engineered the protocol used by the marketplace app to create an open source project that queries the marketplace servers. I’ve been fooling around with android-market-api, great project. I actually had issues with the latest latest code from the svn repo. But if I pull from the 0_3 tag I can compile my own programs that do things like run through the categories. Nice!

Posted in Applications | Tagged , , , , , , | Leave a comment

Gettie Awards

If you’ve had a hacking waiting around for the right time to be released, this might be it. The Gettie Awards is offering $15,000 to the best Android app they find. There are categories for all the major mobile platforms, and an overall prize of $25,000! If you haven’t been coding, dust off your compiler and get cracking.

Posted in Applications | Tagged , , , , , | Leave a comment

Finding Great Apps

Now that there are more than 50K apps in the market, there are a bunch of interesting services out there to help you find the best ones. Of course, some of the services are better than others. Here are a few of my favorites:

Other great places to find apps? Leave me a comment.

Posted in Applications | Tagged , , , , , , | Leave a comment

Android Scripting Environment

Google has recently released a scripting environment for Android that allows you to write Python, Lua, or BeanShell scripts that interface with Android functionality. From the project page:

  • Handle intents
  • Start activities
  • Make phone calls
  • Send text messages
  • Scan bar codes
  • Poll location and sensor data
  • Use text-to-speech
Posted in Development | Tagged , , , , , , | Leave a comment

Getting WebView To Load New Pages

There are a bunch of examples of using WebView to display HTML content loaded from the web in an Android app, including the sample from Google for the WebView class. However the ones I found generally don’t load new pages on their own. I can load up Google, but if you click on anything in the app it launches a browser and takes the user out of the app. The answer to the problem is in the additional points on that Hello, WebView page – you need to set a new WebViewClient to handle the URL load requests. Their example is very helpful, but I prefer to do the override with an anonymous inner class:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    WebView webview = new WebView(this);
    webview.getSettings().setJavaScriptEnabled(true);
    webview.setWebViewClient(new WebViewClient() {
        @Override public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
    	    return true;  
    	}
    });
    webview.loadUrl("http://google.com");
    setContentView(webview);
}

However, if you follow a link to an image it downloads instead of opens in the view. That’s the same thing the built in browser does, but wasn’t the behavior I expected. I’ll have to figure out how to handle that a bit better.

Posted in Development | Tagged , , , , , , , | Leave a comment

Monitoring Network Traffic Using OS X

Here’s a tip for monitoring network traffic from your Android phone using OS X. The same thing works for iPhone (or any other mobile device you can configure to use a wifi connection). I frequently use it to see how some bit of client/server interaction is done.

  • Install Wireshark
  • Follow the instructions in the readme to also install the ChmodBPF script
  • Under Sharing area of the OS X settings app configure your system to use an ethernet connection and share it out to wifi clients
  • Now configure your device to connect to the wifi network provided by your system, test to make sure it works
  • Startup Wireshark and set it to capture traffic (wifi is en1 on MacBook Pro systems, what I normally use)

And that’s it, you should now get quite readable dumps of what applications are doing to communicate. Lots of interesting things you can learn digging into how folks structure their client/server interaction.

Posted in Tips | Tagged , , , , , , , | 1 Comment

Long Press on the Home Key

Intuitive to Nokia users, but I don’t think folks coming from other platforms have picked it up. If you press and hold the home key you get a list of recent apps, which makes switching around a lot easier if you’re bouncing back and forth. Here’s what the app list looks like when it comes up:

running_apps

Posted in Tips | Tagged , , | 1 Comment

Launcher Dock

Another widget I’m running now that I have Cupcake installed is “Launcher Dock”. It’s a 1×1 widget that holds launchers for up to 8 apps. I put some of my less frequently launched (but still relatively frequently used) apps in there so that I can have all their icons on the main screen.  This is a shot of my main screen with a configured Launcher Dock by the bottom right corner, just above the San Mateo weather widget:

launcher_dock_1When you tap the widget once it brings up a selector with launchers for each of the apps you’ve added plus an icon to start the widget configuration interface. Here’s what mine looks like after tapping on the widget:

launcher_dock_2And what the configuration interface looks like if you tap on that center icon:

launcher_dock_3I think it’s a pretty slick widget. Great way to increase launcher density if you have a few widgets taking up some space. And it looks pretty good there on the home screen.

Posted in Applications | Tagged , , , , | 3 Comments