DCApp for Android is released

DCApp for Android is finally released.  You can download it from Google Play.  For those that don’t know what DCApp is, it is an information exchange community for Koreans living in DC/MD/VA.  One of the main features of DCApp is coupons from Korean restaurants and businesses around here.  DCApp iPhone app has been developed to make it easy to use coupons.  The iPhone app has been out for a few months now and the Android app is finally released.  The main website (www.dcapp.org) is built with Drupal and interacts with DCApp iPhone app and Android app through REST API.

The Android app has minimal features for now: getting list of coupons from the site, displaying each coupon in image, and sharing the coupon URL link on KakaoTalk, a popular messaging app that almost all Koreans use.  The app also features basic caching mechanism in order to improve performance.

Initially, I considered using an HTML5 mobile app framework known as PhoneGap because I have never developed any Android applications before, not to mention never working with Java before.  However, after spending some time setting up a development environment (Eclipse, Java SDK, Android SDK, and Spring framework) and getting “hello world” up and running, it was fairly straightforward.  The only issue I had was reading and parsing XML since Drupal custom content types can be complex with many unnecessary elements and attributes.  It took me a lot of reading documentations and visiting stackexchange to finally figure everything out.

Although still early in the product roadmap, DCApp now complete with all four applications for each use case:

  • Web Portal – For desktop users who want to browse and post contents on DCApp fast and easy
  • Mobile Web – For users on the road who want to browse DCApp quickly from their smartphone
  • DCApp iPhone – For users on the road and with iPhone who want to use DCApp coupons (reading and posting other contents will be supported in the future)
  • DCApp Android – For users on the road and with Android phone who want to use DCApp coupons (reading and posting other contents will be supported in the future)

For any products that requires user interactions, I strongly recommend that all four of above use cases be supported in order to provide the best user experience.

Here are some screenshots from DCApp Android: