Gyuri Grell

sharing my wisdom with the world




Poster thumbnailTroodon Software LLC has released a fantastic class library poster for Android development in PDF format, so you can print it out and hang it on your wall for quick reference.

Download PDF

Download Visio format

/via Android SDK Poster blog post

Help text

To help make our Android applications look even more professional, we can include HTML formatted text and display it in a WebView. Here's the simplest way I've found to have local HTML, image and style files and display them. This is the same process I use to display help in Grandma Jong.

First, I've stored all my files in a subfolder of assets. This will make it easier to load the HTML, and via some built-in functionality in Android, it will load all assets from the same folder as well. Here's a screenshot of the assets folder:

Assets folder

Here I have the HTML file, along with the referenced images. Now a glance into what the HTML looks like:

<p>
<img src="bomb.png" align="left" style="margin-right:1em;" /> Don't despair! Bomb tiles let you clear blocked tiles; just select the tile to remove, then select a bomb tile on the left. A matching tile will be removed from the level.
</p>

The <img> tag just has a straightforward reference to the image file, since when loading the HTML, the passed in path will be taken as the root path and all references are valid from there. Finally, there's the WebView code needed to load the HTML from the assets folder. Once you have a reference to a WebView instance, all you need to do is call the loadUrl method on it:

webViewInstance.loadUrl("file:///android_asset/help/help.html");

The "file:///android_asset" path is a special one that points to the assets folder in your project. That's all there is to it. Although I haven't demonstrated it here, you can also store and load style and javascript files the same way.

RPX provides universal authentication via various OAuth providers like Google, Facebook, Yahoo, Twitter, etc. They now have an implementation available for iPhone developers. Hopefully they'll have an Android version soon as well.

Posted via web from Gyuri Grell's posterous

Example materials that you can use to create your icons.

The Android Icon Design Guidelines have been updated to describe the latest design styles of iconography in versions 2.0+. The styles have changed dramatically from pre-2.0 days, so be sure to read the whole document.

There are also some nice Photoshop templates that can be download from here.

(via Roman Nurik)

train tracks
Flickr photo by _fLeMmA_

It has been a long couple of months from before Thanksgiving straight through Christmas and New Years and I was very busy during those times. I didn't get a whole lot done on anything Android related, including working much on my first app to be published to the Android Market, titled Grandma Jong.

Now I'm back on track, and put in a lot of work over the last week or so into getting it ready for a beta test. I'll post here when it is ready, but in the meantime, here are a couple screenshots:

Main menu

Choose a level

Main gameplay

Completed the level

Barcamp DC photo by jgarberI'm really excited about attending the third local BarCamp in DC tomorrow! Yep, we're already on our third one here locally (not to mention all the others happening in the Baltimore-Washington D.C. area). I'm planning on co-presenting on Android development with Zvi Band. I'll be showing a simple graphical app with animation and touch screen input.

I'm also using this opportunity to launch the first in a series of articles on Android development, gradually improving this simple app into something useable in a real app involving animations and graphics. Stay tuned, I'll be posting the first article here sometime next week.

Google WaveI have 5 Google Wave invites available. First 5 comments below will receive the invites. Remember to include your email address!

 

[EDIT: All gone. I'll post again if I get any more.]

Android donutVersion 1.6 of the Android SDK has been released to developers. Though this isn't a major release, there are quite a few tasty updates that I'm looking forward to (both as a user and a developer).

For users, updates include:

  • Quick search box - The Android search mechanism has been redesigned to be able to search across multiple data sources including bookmarks, history, contacts, web, etc. It also is smart enough to bubble up the more commonly used results.
  • The camera, camcorder and gallery have been simplified and made quite a bit faster than before.
  • VPN support has been added.
    • L2TP/IPSEC pre-shared key based VPN
    • L2TP/IPsec certificate based VPN
    • L2TP only VPN
    • PPTP only VPN
  • A bettery usage indicator which shows you how much each of your running apps is consuming so that you can stop those that kill your battery.
  • Better accessibility support.
  • A much improved Android Market that addresses many of the concerns that users and developers had with the market. These changes also help discoverability and doesn't hide paid apps.

For developers:

  • An API to handle the expanded search framework used by then quick search box.
  • A new multi-lingual text to speech engine called Pico. It allows any Android application to "speak" a string of text with an accent that matches the language, and supports English (American & British), French, Italian, German and Spanish.
  • A new gestures API for creating and reusing gestures, and associating it with actions.
  • Extended support for varying screen resolutions and densities. This will become more important as WVGA and QVGA devices come to market.
  • Telephony support for CDMA
  • A newer version of OpenCore media engine with additional codec support and improved buffering.

 

I came across this interesting discussion yesterday regarding WVGA supporting coming in the Donut (1.6) version of Android OS. It looks like there will be a lot of work cut out for developers because we'll need to support Cupcake (1.5) which is standardized on HVGA, and Donut which will now start supporting not only various resolutions, but also various screen densities. As developers, we'll need to consider our layouts on various screens to make sure the look their best. Thankfully, there will be some built-in support for scaling layouts and images to ease the transition.

There is a blog post being written on the topic of different screen sizes, and we have gone through round after round of work on the underlying model of the platform and how to best explain the way this works, which is
reflected in the doc.

As a side note, Al Sutton of AndAppStore.com has prepared a build of the 1.6 SDK and eclipse plugin to help test out the features coming in the next revision. We'll need all the head start we can get to implement these new features. I've played around with this a bit, and like some of the new features coming to the eclipse plugin. I'll write more about these later.

AndroLib.com is a third-party website (not run by Google) that presents a nice display of all the apps available in the Android Market. They have been crunching some statistics about what kinds of apps are available and the number of downloads they have. One interesting bit of information is that at least 25% of the apps have less than 50 downloads! Goes to show that it isn't enough to just upload your app to a mobile market and expect millions of downloads; you really need to get the word out about what you're doing, what your apps are and why people should download yours.