160 likes | 299 Views
Design and Development of Facebook Agenda Application that Integrates with BlackBerry Handset. Deny Hendrata (26406140). Background. BlackBerry User wants to inform his Friends on Facebook about the Events in his BlackBerry. Background (cont'd).
E N D
Design and Development of Facebook Agenda Application that Integrates with BlackBerry Handset Deny Hendrata (26406140)
Background • BlackBerry User wants to inform his Friends on Facebook about the Events in his BlackBerry.
Background (cont'd) • User wants a Facebook Application that notifies him on upcoming Events, either through his Facebook Homepage or by e-mail. • Either Facebook Users are having difficulties to find a Facebook Application that receives Event informations from BlackBerry and that’s user friendly / easy enough to use, or such application doesn’t exist on Facebook (as of December 2009). @
Problems • To bring the BlackBerry Events to an application that utilizes the Facebook Events API (features) and the other Facebook features. • To build an application that functions as an Event agenda, that runs on the Facebook Platform. • To build a Mobile Application (mobile app) that reads and transfers Event informations from the BlackBerry to the Facebook Application. • To build User Friendly / easy to use agenda application.
Objective • Users are able to share / publish their transferred BlackBerry Events to the Wall of their own or their friends’ Wall, so that friends can take further actions towards the shared Events (be it taking part by RSVP-ing to the Event or downloading the vcs file to be added to their mobile phones / desktop applications) and get notified on any upcoming Events.
Scope • The mobile app reads only Standard fields of the Events, the non-recurring ones, and the non-All Day Events. • The Database contains all the Event informations being exported from the mobile app. • The agenda creates Event instances in the Facebook Database (exact copy) based on the Events that were created in the Database, automatically.
Scope (Cont'd) • The actions a user may take (in the agenda), including : Cancel, Edit, Create, Share, Invite. CANCEL EDIT SHARE INVITE CREATE
Scope (Cont'd) • The agenda notifies the User (through the Dashboard and via e-mail).
Scope (Cont'd) • The agenda shares / publishes the Event(s) on behalf of the User.
Scope (Cont'd) • (Additional) The mobile app checks for changes in the Database and then synchronizes with it on behalf of the User. • (Additional) The additional types of personal information that the agenda can handle : To Do Lists and Contacts.
Login, Grant Permission & Authorization Registration Verification (mobile app) System Design Sync Export Create Edit Cancel Invite Reminder / Notifier Mark Search View Detail Send to E-Mail Share / Publish Check Database Create Verification Registration Export Login & Authorize Cancel Edit Invite Share Mark Search View Details Send to E-mail Check Database Sync
Common Obstacles LATENCY PARSE ERRORS • Facebook Bugs : 1. Latency 2. Parse Errors • Facebook pushes changes in the platform frequently without providing a good documentation about those changes. http://bugs.developers.facebook.com/show_bug.cgi?id=8203 http://bugs.developers.facebook.com/show_bug.cgi?id=7528
Conclusion • The agenda has been able to utilize the Events API and several Facebook features (share, notification / counter). • The mobile app has been able to read and transfer the extracted Event informations to the agenda / Database (Synchronization from mobile app to the Database). • The mobile app has been able to detect changes that occur in the Database caused by creation / modification / cancellation of Event on the agenda and then applies those changes in the BlackBerry (Synchronization from Database to the mobile app). • The mobile app behaves quite differently in the Simulator than it does in the real device (works well / tested with OS version 4.7.0 and 5.0). • The performance of both applications relies on the performance of the Servers.
Suggestions • By the usage of Java ME’s standard classes, the mobile app is highly expandable to support most Java-enabled mobile phones. • Features such as directly generating vcs file to be shared / distributed, can be implemented on the mobile app. • User Interface improvement on both apps. • Synchronization feature can be further improved by adding a menu for setting the frequency of Database checks and to help reducing the internet cost. • Information transfer method in the mobile app can use several other alternatives such as by XML-formatted string instead of by character-delimited string.