ubikapps.net

Mobile Development Blog

Reader Widgets V2.14 in the Market

I have just uploaded the latest version of Reader Widgets Pro and Free to the Android Market. Here is the change log:

  • Bug fix: added check for background data permission. If Settings\Accounts & sync\Background data setting is disabled then no data is downloaded.
  • Bug fix: added listener for when app is upgraded. This will restart the update service so new data is retrieved. This was particularly a problem on Android 2.2 (Froyo) which blanks out widgets when they are upgraded.
  • Data no longer downloaded on boot-up when a Reader Widget is active. This should speed up boot times slightly when running the widgets.

Paperless List V1.4 in the Android Market

I have just uploaded the latest version of Paperless List to the Android Market. Here is the full change log:

  • Offers shown in search and list highlighted in blue
  • Added disclaimer dialogue box about prices being from the Tesco.com store
  • Bug fix: gestures at the bottom of long lists corrected. The wrong item was getting crossed off
  • Bug fix: prices for low cost products (<£1) corrected
  • Various force close issues resolved

Incidentally a bug was fixed in the Tesco API. It was to do with paginating through results. Paperless List only showed the first 20 results but as of version 1.3 it can display up to a maximum of 100. Scrolling to the bottom of the search results automatically loads the next 20 products. The total number of products is shown just under the text input box as well as the overall total Tesco has. Now that the API bug is fixed this functionality has magically revealed itself in V1.3!

Paperless List V1.3 in the Android Market

I have just uploaded Paperless List V1.3 to the Market. Here’s the full changelog:

  • Keyboard hidden when search results displayed
  • Search box auto-completes using history. Use menu to clear search history
  • Progress wheel aligned better
  • Low pixel density devices (e.g. HTC Tattoo) supported

Reader Widgets V2.13 in the Market

The latest versions of Reader Widgets Pro and Free are now in the Android Market. Here’s the change log:

  • Enabled plugins in the Webview. This allows Adobe flash to run on Froyo devices.
  • Bug fix: when exiting the Webview in certain situations it would get stuck in a bad state and be unresponsive.
  • Bug fix: one thread now used to rotate headlines in all large widgets. This fixes an issue where the headlines would stop rotating if more than one large widget was running. It should also save battery life.

Paperless List V1.2 in the Android Market

I just uploaded Paperless List V1.2 to the Android Market. It contains minor fixes:

  • Built against new Android 2.2 SDK revision 2
  • Improved error handling so when Tesco.com API is down messages reflect that

How to: create a Paperless List through the air

One of the features I like the most about my new app Paperless List is the chrome-to-phone functionality. It was also one of the simplest features to implement. In Android 2.2 (Froyo) Cloud to Device Messaging (C2DM) was added. This allows cloud services to push notifications or data down to an Android 2.2 phone. Shortly after the first Froyo build was released, chrome-to-phone appeared to allow links to be sent from a PC browser down to a phone running Froyo over the air. When sent to the phone website links opened the browser, Google Maps links opened the Android Google Maps app and Youtube links opened the Youtube app. Now Tesco.com links open Paperless List and add items to the shopping list.

Requirements:

  • Android 2.2 phone e.g. Nexus One
  • Google Chrome 4.0 and above or Firefox 3.0 and above on Windows/Mac/Linux

Instructions:
1. Download Paperless List from the Android Market
2. Download and install the chrome-to-phone Chrome plugin and companion Android app from here. If you are using Firefox then download the Send To Phone plugin from here. The Android app will require you to enable installation from “Unknown sources” in application settings.
3. Run the chrome to phone app on the phone and register your device.
4. Go to Tesco.com in Chrome, click on groceries and login to your account. If you don’t have an account, sign up for one. It doesn’t take long.
5. Navigate Tesco.com and find a product page like this one for milk.
6. Click on the chrome-to-phone icon in Chrome to send the product to your Paperless List. The first time you do this in your browser session it will require you to sign into Google. After sign in go back to the tab with Tesco.com open and click on the icon again to send the link.
7. After a short delay your phone will make the default notification sound and a pop-up will appear asking you to select the Browser or Paperless List:

pop-up

8. If preferred check the “Use by default” box to automatically add things to your shopping list in future. Tap the Paperless List option.
9. Paperless List will start and retrieve the product details from the Tesco.com API
10. Once the details are retrieved the product is automatically added to your list and of course updates the total cost:

chrome list

11. Repeat steps 5 to 10 to build a complete shopping list over the air. It also works for the Tesco.com search results page by making Paperless List execute a search with the same keywords.

Unfortunately, at the time of this post only the Nexus One has an official Android 2.2 build that supports C2DM. Hopefully more devices will get updated to Android 2.2 soon.

Paperless List V1.1 in the Android Market

I have just uploaded a quick update to my new Paperless List app. Some users reported that no search results were appearing despite perfectly valid search terms being used. This seemed to be an issue with the Tesco API reporting 0 results when in fact the session key needed renewing. I have added a workaround so that the search is retried once in the background when 0 results are returned. I have also auto-capitalized the manual add text input box.

And for my next app: Paperless List

Paperless List is a shopping list application powered by the Tesco API. It is for UK Android devices only.

Paperless List

Tesco products can be searched for or scanned using the Barcode scanner already in the Market. There are other Tesco shopping list apps in the Android Market but I started development on mine before these appeared. I have added some unique features to differentiate it:

  • Horizontal swipe gestures (only on Android 1.6 or above) or context menu to cross off items
  • Manually add items
  • Total price of list visible at all times
  • Using chrome to phone on the Tesco.com website, products and searches can be sent straight to the phone from a PC. This works on Froyo (Android 2.2) only and requires a sign in to the Tesco.com site on the PC.
  • Froyo (Android 2.2) apps to SD compatible
  • Action bar and dashboard design patterns utilised, similar to the official Twitter Android app.

In order to perform an action on an item in search results or the list, the long press context menu is used. This includes viewing product details including images and special offers:

product details

Even though it implements the latest Android features the app works on Android 1.5 and above. This took some extra work but I think it was worth it. It is available now on the Android market in the UK. Search for “paperless list” to find it.

Update – scan QR code to go straight to it in the market:

QR code

Reader Widgets V2.12 in the Market

I have just uploaded a new version of Reader Widgets Pro and Free to the Android Market. The main change is to the WebView authorization process. Google recently change the Reader authorization method for the API. However, it turns out this also affected the Reader mobile site so that automatic login stopped working in the WebView of my widgets. I have tried to find a way to get it working again but have had no success. I have asked Google for help but have yet to receive a response. So instead of getting automatic authorization to work again I decided to do the next best thing and make sure once the WebView is signed in, it stays signed in. This involves using Android’s built in WebView cookie synchronization.
I also fixed a rare force close that occurs when network coverage is poor.

SMS Bot Widget V1.4 in the Market

I have just uploaded SMS Bot Widget V1.4 to the Market. Here’s the changelog:

  • If configuration is cancelled it can be relaunched by tapping the widget.
  • Bug fix: Occasional force close for Android 2.x devices in send dialogue

The second bug was reported in the new “Android Application Error Reports” feature added in the FroYo version of the Market. This makes it much easier for people to report problems to developers and so more bugs will get reported and Android apps will improve much faster.