This Enerloop USB Booster Stick is designed to charge up your handheld device using nothing more than a couple of rechargeable AA batteries. You should get around 90 minutes extra use of whatever, and some strange stares on the bus as you whip this thing out of your pocket. Still good things are worth the hassle eh? $47.00.
Eliminate your worries with the Eneloop USB Booster Stick, a slim, lightweight charger for any device with a USB charging cable. Powered by two rechargeable NiMH AA batteries, it pumps out enough juice to run or charge most small electronics for up to 90 minutes, and you can extend its range indefinitely by carrying extra batteries.
If you don’t mind not looking quite so sophisticated, you can make your own with the world famous MintyBoost, so called because it uses an Altoids tin, for about 20 bucks US.
http://www.adafruit.com/index.php?products_id=14