Sunday, December 19, 2010

Beryl Project

Beryl has been posted on Google Code for some time now. The goal was to provide an extension to the regular Android SDK for useful things that developers would need.

Today, I've made it so that the project is available in jar format for a few of the well built apis. A few of my apps have started to use the code from Beryl. My Location now now using the code that simplifies how location providers can work together to get more responsive and reliable location data.

Like many of the published apps Beryl is an open source project. Beryl is not available on the Android Market since it is not an app. It is intended for developers only. Anyone can contribute or use the API under the New BSD license terms.

NOTE: A lot of the code is not fully documented and other parts are not finalized.

http://code.google.com/p/android-beryl/

API Documentation: http://android-beryl.googlecode.com/hg/api/index.html

Friday, December 17, 2010

Wifi On Call

On networks like Verizon and Sprint, any time you make a phone call you lose your 3g connection. This can be annoying sometimes but with the ubiquity of Wifi hotspots it isn't so bad. Today I am launch a new app called "Wifi on Call" which automatically enables wifi when you are on a phone call and you lose your 3g connection. Wifi will be turned off when you hang up the phone.


Scan this QR code with your phone or tap it on your phone to download.

Sunday, December 12, 2010

Lock Screen Switch Widget 3.0

The Lock Screen Switch Widget has been updated.

This version should hopefully end (almost) all the random failures of the widget. It also features a new icon.

Thoughts on the Notification Icon
So this new version solve the random re-enabling of the lock screen by putting a notification icon in the status bar. This is a requirement by Android that if a service isn't supposed to be killed it has so show some sort of visual indicator that it's still running and doing something important. The notification icon is the only want to get this to work.

Unfortunately, this looks ugly for some people. I did consider that when making the fix but I think there are plenty of (broken) alternatives out there that don't do this.

Issues:
https://code.google.com/p/futonic-lockscreenswitchwidget/issues/list
Source Code:
 https://code.google.com/p/futonic-lockscreenswitchwidget/source/browse/

Saturday, December 11, 2010

My Location 4.0

My Location 4.0 has been released.

New Features:
  • Cleaner Icon
  • More reliable location.
  • Improved French Translation

The most visible feature is a new icon. It's a little rough but I don't have the money for Photoshop and I'm not a graphic person. Anyone wanting to contribute can since this is an open source project. :)

Sunday, November 14, 2010

My Location Widget 3.0

The My Location Widget has been updated with some nice new features. You can now select the type of information is send. Address, Geo Coordinates, and a Google Maps link. There's also some social features added such as viewing photos of places around you via Flickr.

The source code has been updated of course. If you want to see it you can check it out here:
http://code.google.com/p/futonic-mylocationwidget/source/checkout

If you find any problems or want to make any suggestions you can create an issue:
http://code.google.com/p/futonic-mylocationwidget/issues/entry

Click here to download from Android Market (Android Phones only)

Tap on or scan the bar code to download My Location Widget.

Volume Control Widget

A while ago I released the Volume Control Widget.
The goal of it was to create something that's small, easy to use, and looks like part of the system (at least the stock android models.)

There are 3 sizes just like the other apps that are published. The large one controls the ringer and music while the others are just for the ringer.

Volume Control Widgets

Monday, October 4, 2010

Android String Resource Translator 2.0 Released

A significant update to the Android String Resource Translator has been published.

New Features:
- Added Microsoft Translator (supports more languages and is way faster!)
- More plugin like architecture.
- Ability to select the source language.
- Links to creating an API key.
- Unescaped single quotes.

Project Site: http://code.google.com/p/android-string-resource-translator/


* This version requires .NET 4.0 Framework to use.

Task Manager localized for a total of 32 languages!

Saturday, October 2, 2010

Mobile Ads and Single Hand Navigation

Like many mobile applications my freeware is littered with ads.

I acknowledge that this reduces user experience for many but obviously I can't write software for free.

To limit the damage I've done a few things that skill keep the ad money flowing and the users as happy as possible.
I was faced with the following requirements:
  1. Ads have to bring in money. - Otherwise they just wasted my time and reduced user experience.
  2. Many users hate ads. - They slow things down and get in their way.
  3. Ads consume precious screen space. - They shouldn't take away from the content they are presented with.
  4. Keep Task Manager as a single hand application. - Users shouldn't have to use their other hand to navigate  
These are the design decisions I made to address these requirements.
  1. The ad is placed at the top.
    1. After reading the recommendations for ad placement it boiled down to 2 areas. Place the ad at the top or bottom.
    2. Users tend to hold their phones with the palm cupped to the bottom-right for right handed and bottom left for left handed people. Because of this it is more convienient to hit an ad at the top of the screen than at the bottom.
  2. The ad itself blends in to the content.
    1. The ad is presented differently but it is apart of the task list.
    2. It behaves similarly to any other item in the list. If it is clicked it will send you to where it was described. 
  3. The ad can be removed naturally.
    1. I wanted the ad to be easily removed because once the ad has been presented, interested users will click on it while the ones that don't care for it don't want it to annoy them.
    2. Ads eat a significant portion of the limited screen space that's available. They are designed well to minimize the space they use but they still consume space that is used. This is why I didn't want to have a static ad.
    3. The ad is part of the task list. So when the user scrolls the ad goes away as they would expect.
Below is a screenshot of the Task Manager application with an ad outlined in red.
Red - Ad space area.
Green - Most convienient area for tapping the screen.
Blue - Less convienent but still good for tapping the screen.

NOTE: The areas outlines themselves are very coarse. They are approximations based on 10 seconds of trial.

It is possible to hit all areas of the screen but the bottom right is the most unfomfortable area to reach (right handed) while the bottom itself requires the palm to be readjusted in order to hit those areas accurately. For those cases the user will probably swap hands, change orientation or use both hands.


Screen shot of the Task Manager free application. The Red area is where the ad is placed. Green is the most optimal for single hand tapping. Blue is ok but pushing it for single hand tapping. The uncovered areas are problematic.

Software Design

I've been thinking a lot about software design lately. Even watched some talks on the YouTube. It goes without needing so say that software design is one of the most important aspects of the software itself. Especially in this age of computing where computers are being crafted to do very specific tasks and do them well. In order for them to do these task well they need to be designed well and the design.

I'm by no means a professional or an expert in software design so any entry tagged as software-design shouldn't be taken as gospel. I'll be writing these entries as food for thought.

Task Manager 5.1 Update

Task Manager was just updated to version 5.1.
The biggest change is the switch in advertising providers.

I hope this change improves user experience.

Saturday, September 25, 2010

Lock Screen Switch Widget Updated

Some users have complained that the widget does not work after a while. I've added some code that'll prevent the lock screen from reenabling.

2 Projects Open Sourced

The My Location Widget and Lock Screen Widget applications for Android have been open sourced under the MIT license.

My Location Widget: http://code.google.com/p/futonic-mylocationwidget/
Lock Screen Widget: http://code.google.com/p/futonic-lockscreenswitchwidget/

From now on all code changes and versions of each of these apps will be available in these web pages.

Saturday, September 18, 2010

Android String Resource Translator has been open sourced!


Many apps on the Android Market are made by a single developer. Because of this it's really hard to provide apps that are accessible to many users outside of their native language. Today, I am releasing a tool to help that problem.

This tool will take your Android project and scan it for string resources. (They should reside in the res/values/string.xml file). These resources will then be translated to a bunch of different languages and placed in the appropriate folders automatically.

It has been released as an open source project under the GPLv3 license. If you want to contribute please let me know.



Lastly, this utility uses Bing as the backend so be kind to their servers. Only use this tool just before release.


  
Android Market panel showing the My Location Widget localized to many languages.

Beryl Android Library

While working on my Android applications there's always a ton of code that I create that can be reused in other projects. For this I created a cherry picking project called Beryl.


This library has all sorts of functionality such as web service apis against Bing and Google as well as enhanced logging and HTTP REST.


Later on I'd like to add some custom themes to promote consistent look and feel across all my apps that are also visually pleasing. And actually complete some of the tasks that are in the project backlog.


Since this project is open source it is available to everyone and if you'd like to contribute please let me know.


Beryl Project Page - http://code.google.com/p/android-beryl/
Subversion Repository: https://android-beryl.googlecode.com/svn/


Lastly, there's a pretty sweet utility for Android developers that can automatically translate your Android Project string.xml into many different languages. Judging from the comments I get on the market they have been positive. I'll be posting that utility as a standalone project later on as well.

Sunday, September 12, 2010

My Location Widget 2.0

My Location Widget has been updated.

New Features:
  • New Widget Sizes 1x1, 2x1.
  • Address is now shown in notification bar if not using the 4x1 widget.
  • Sharing now includes the address information.
1x1, 2x1, and 4x1 widget and notification.
Widget Selector with the new sizes.

    Saturday, September 11, 2010

    My Location Widget update coming!

    My Location Widgets now come in more shapes and sizes!
    Lots of users have stated that the My Location widget is too large. The next update should fix those complaints, you'll now have 3 sizes to choose from! 1x1, 2x1, and 4x1.

    Task Manager in Froyo

    In Android 2.2 (Froyo) there's been some talk about Task Manager not working as well as it has in the past. With this post I'm confirming that this is the case. The short answer is Google has made some changes that made ALL task managers less effective not just mine.


    The detailed reason is there was functionality in the Android SDK that allowed developers to shutdown packages (or apps) that was limited. Android still allows apps to shutdown other apps but the ones being shutdown cannot have any attachments to the system such as alarms, active services, etc. Android still has the functionality to shutdown apps but this has been hidden from 3rd party developers and locked down with security so we can't touch it.

    The only way to address this change is by attempting to kill the app. If it doesn't get killed the Task Manager will send you to a page that has these special privileges to kill the app.

    I'm sorry that it's cumbersome but this is the best solution out there for now.

    Task Manager for Android

    Android supports multitasking for your apps. For the most part apps play nice and don't cause problems but or the other times a task manager can help you control them.

    Features:
    • Resizing
    • Notification Icon
    • Smart Kill
    • Widgets
    • Ignore List
    • Kill Everything, Tasks, and Services
    • Power Information and Details
    • Manage Apps
    • Memory Display
    Donate Version Additional Features
    • Auto Killing
    • No Ads

    Futon Redemption's Android Apps

    This blog will contain update information of all things related to the apps I've posted on the market.

    At the time of this writing the following apps are available:
    • Task Manager
    • Task Manager - Donate
    • My Location Widget
    • Lock Screen Switch Widget