We were looking for an application to get notified when new Amazon Goldbox and Lightning deals were available. After reviewing many deals apps we could not find any the did this, so we created one. Daily Deals will keep you up to date on the latest Amazon Goldbox, Amazon Lightning deals, buy.com deal of the day, Woot deals, and yugster deal of the day.  You can enable notifications for lightning deals and you will be notified when the lightning deals change through out the day. We also created a nice home screen widget for the GoldBox deal. We use this app everyday and it fits our needs perfectly, hopefully it will work for you too. To download the app you can search for goldbox deal in the market app on your phone or install from the market online here

   

 

Post to Twitter Tweet This Post

Receive compressed json with Android app

Posted July 18th, 2011. Filed under Applications

There are times that you want to query a server from your android application and bring back JSON to process, at times this JSON can be large and you want to make the call as quick as possible. The easiest way to do this is to allow the server to compress your JSON response before sending it to you which will extremely reduce the size of the data being sent to the phone. Here is a quick sample of calling a webservice that returns compressed JSON and processing the result

 

public void getUpdates() {
 
    HttpClient httpclient = new DefaultHttpClient();
    HttpGet httpget = new HttpGet("http://yourservice.com/api/stores.json");
 
    // you have to tell the server that you can handle zipped response
    httpget.addHeader("Accept-Encoding", "gzip");
 
    HttpResponse response;
 
    try {
        response = httpclient.execute(httpget);
        HttpEntity entity = response.getEntity();
        if (entity != null) {
            InputStream instream = entity.getContent();
            String result;
            // check if we got a compressed resonse back
            if (entity.getContentEncoding() != null && "gzip".equalsIgnoreCase(entity.getContentEncoding().getValue())){
                result =  uncompressInputStream(instream);
            } else {
                result = convertStreamToString(instream);
            }
 
            ObjectMapper mapper = new ObjectMapper(); 
            mapper.getSerializationConfig().setDateFormat(sdf);
            JsonStoreResult jsonResult = mapper.readValue(result, JsonStoreResult.class);
 
            for (JsonStore e : jsonResult.getStores()) {
                // store this object or do something with it
 
            }
        }
    } catch (ClientProtocolException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}
 
private String uncompressInputStream(InputStream inputStream) throws IOException {
    StringBuilder value = new StringBuilder();
 
    GZIPInputStream gzipIn = null;
    InputStreamReader inputReader = null;
    BufferedReader reader = null;
 
    try {
        gzipIn = new GZIPInputStream(inputStream);
        inputReader = new InputStreamReader(gzipIn, "UTF-8");
        reader = new BufferedReader(inputReader);
 
        String line = "";
        while ((line = reader.readLine()) != null) {
            value.append(line + "\n");
        }
    } finally {
        try {
            if (gzipIn != null) {
                gzipIn.close();
            }
 
            if (inputReader != null) {
                inputReader.close();
            }
 
            if (reader != null) {
                reader.close();
            }
 
        } catch (IOException io) {
 
            io.printStackTrace();
        }
 
    }
 
    return value.toString();
}
 
private String convertStreamToString(InputStream is) {
   BufferedReader reader = new BufferedReader(new InputStreamReader(is));
   StringBuilder sb = new StringBuilder();
 
   String line = null;
   try {
       while ((line = reader.readLine()) != null) {
           sb.append(line + "\n");
       }
   } catch (IOException e) {
       e.printStackTrace();
   } finally {
       try {
           is.close();
       } catch (IOException e) {
           e.printStackTrace();
       }
   }
   return sb.toString();
}

Post to Twitter Tweet This Post

We have put an update out today that adds favorites to our FREE Mall of America app called MegaMall MN. Now you can mark any store as your favorite for quick access from the store list. On the store list you can easily switch between viewing all stores and your favorite stores. The update was submitted today so we expect it will be approved and available tomorrow or Tuesday. Here are a few screen shots of the new features

 

Post to Twitter Tweet This Post

Bank It! FREE Game for Android

Posted February 20th, 2011. Filed under Applications

Bank It! is a FREE, fun and challenging game to test your ability to bank a disc in the goal. Use your geometry skills to figure out the best angle to throw the disc so it hits 3 banks before going in the goal, but watch out 4 banks and your disc will explode!!. Awesome graphics, blazing lights, and lots of fun. Openfeint game network is built in so you can compare your high score with your friends and unlock achievements. You can play the classic game or try to beat the clock in ‘time attack’ mode. You get 60 seconds to get as many bankshots as you can. Very addictive game that is hard to put down!! The ultimate bank shot game.

Post to Twitter Tweet This Post

Available just in time for Valentine’s Day!

Conversation Hearts for iPhone and iPod Touch is now available! Standard version is FREE and like the Android version, allows custom messages to be added to a candy heart via a digital confectionery process. You can upgrade the app via in-app purchases to add additional heart options and remove ads. Feel free to contact us to suggest new heart types and possible combinations!

ConversationHearts iphone Available now in App Store!

Post to Twitter Tweet This Post

TwistByte recently released pair of light-hearted application specifically for Valentine’s Day!  Conversation Hearts is a free application and allows you make create custom conversation hearts and share them via a variety of outlets, including social media and image services.  A variety of sizes and colors are available to you for experimentation and fun.  Conversation Hearts Plus (0.99) adds several custom heart options, including rose, crown, dog, bling and more!  In addition Conversation Hearts Plus removes ads and helps support further revisions and future heart options.

So what are you waiting for?  I’m sure there is someone in your life that would LOVE a custom conversation heart right now!  Don’t wait until Valentine’s Day, spread the love today! Go grab “Conversation Hearts” or “Conversation Hearts Plus” in the Android Market today!

Post to Twitter Tweet This Post

We have added one of the most asked for features to our FREE Mega Mall MN Android application, current and upcoming events scheduled at the Mall of America®. Now while shopping at MOA you can browse all the events going on that day (or future) quickly and easily with Mega Mall MN. The list is updated from our server so it will always be current with up to date event information.

Another feature we added is a ‘Special Deals’ section that allows retailers at the mall to make you aware of any special deals they have going on while you are visiting

Search ‘Megamall in MN’ or ‘Mall of America’ in market or scan the following barcode

Post to Twitter Tweet This Post

NEW – Now you can see your current location by choosing the store you are near. This will allow you to see where you are in relation to where you want to go.  We opted for choosing your location because the 3G and GPS are very unreliable in the mall and would not work all the time.

This is a store guide for the Megamall in Bloomington, MN, otherwise known as the Mall Of America. You can filter stores by category, floor, or direction/location. You can tap on a store name and see the location of the store on a map of the Mall along with your current location on the map. This is perfect for finding the stores you are looking for quickly or just discovering new stores in the categories you are interested in. Includes shopping list feature so you can keep track of those Black Friday deals and Holiday gifts!

This is a FREE application and you can grab it now by searching for ‘Mall of America’ in the market or scan the following bar code using bar code scanner

Post to Twitter Tweet This Post

Megamall in MN (Mall Of America) iPhone App

Posted December 16th, 2010. Filed under Applications

“Megamall in MN” is a store guide for the Mall Of America® in Bloomington, MN. Filter stores by category, floor, direction and location. Select store to see where it is located on a map of the mall. Includes shopping list feature so you can keep track of those holiday gift ideas. See it in itunes here

Post to Twitter Tweet This Post

Android 2.2 on HTC Hero via Cyanogenmod 6

Posted November 6th, 2010. Filed under Applications

I recently got tired of constantly running out of space on my HTC Hero. So rather than deal with the continued frustration, I finally flashed my Hero with the new Android 2.2 ROM from Cyanogenmod. I have to say I could not be happier! Everything worked after the ROM flash, that is right, no problems! Currently, my Hero is overclocked to 768 MHZ and the performance boost is definitely noticeable. The ability to move the applications to the SD card has solved my constant issue with space on the Hero and Android 2.2-only apps like Chrome to Phone, Google Goggles, and others are now available. The Cyanogenmod ROM comes rooted and I verified wireless tether worked perfectly as well as ROM manager and setCPU.  With this ROM you can utilize the setCPU application and overclock the CPU; which is how I set the Hero’s Cpu to 768 MHZ vs the stock 528 MHZ.  As I mentioned above, this is a considerable speed boost and if you are willing to take the risk, flashing your ROM for this reason alone is worth it. Below, I will briefly outline the steps I took to make my HTC Hero virtually a new phone.

DISCLAIMER:  Follow the guide below at YOUR OWN RISK.  TwistByte, LLC its affiliates, assigns, advertisers, hosts, or other entity related to TwistByte, LLC will not be held responsible for any damage to personal or other property as a result of following this guide. Further THIS PROCESS WILL ERASE ALL YOUR DATA. You will need to backup your application data, emails, sms, etc.. that you want to keep. This process could BRICK THE PHONE which may leave it in an unusable state.  Finally, flashing your ROM may VOID your manufacturer warranty.

As you are aware from the disclaimer above, this process could brick your phone and result in data loss if you haven’t backed everything up.  Now, I had a recent backup of all my data and followed the steps below carefully and didn’t have a problem on my Hero, but that might not be the case for everyone.  Basically, be careful when flashing ROMs, especially if flashing your main device.

1 ) If you have the most up to date software from sprint than you will not be able to root your phone, so I flashed the original 2.1 update provided from sprint back to my phone. If you dont have this download I think you can get it on the web. The file is called HTC Sprint Hero MR 2.27.651.5 2.exe

2 ) After a clean install of the original 2.1 ROM go to http://unrevoked.com and download unrevoked for HTC Hero.  Open the application and click on button to root your device

3 ) Install ROM Manager from the android market

4 ) Back up your existing ROM

5 ) Download Cyanogenmod 6 from the site here for HTC Hero CDMA

6 ) Copy the zip file you downloaded to the SD Card, open ROM Manager and click ‘Install ROM from SD card’. Then choose your zip file you copied there

7 ) If you want all the google apps and market then copy one of these ROMs here to your SD Card and install the same way you did in 6. Make sure you uncheck clear the data check boxes.

8 ) Now install setCPU from the market and accept the defaults. It will dynamically overclock to 768 mhz. Note that overclocking your phone will likely reduce battery life and increase overall heat output of the Cpu, as such, monitor your phone carefully when overclocking.

Some of the applications I installed:

Sprint Visual Voice Mail from xda-forums

Pure Grid Calendar – replacement for htc calendar widget

Fancy Widget – replacement for main clock/weather widget

Wireless Tether – wireless router

Memory Usage Plus – The widget you see on the home screen is from memory usage plus. displays active, avail, free memory

CPU Usage Plus – Nice to see which processes are running and using CPU

I created the following video when I was running Cyanogenmod 6.1 RC1 I had some issues with this experimental ROM (force closes) so I flashed the Cyanogenmod 6.0 stable release and this version is much better, no force closes, better performance over all. This ROM only allows setCPU to over clock to 691 mhz but if you use the interactive scaling and the 691 mhz max it really performs well. More information on interactive governor can be found here

Here is a real short video with my HTC Hero running Cyanogenmod 6.0. As you can see the screen is very responsive and the applications start up quickly. I removed the live wallpaper because that was slowing down the phone in general and was just not worth it IMO

Post to Twitter Tweet This Post