Phonegap Kitchen Sink - All the APIs working for Phonegap Build

When I first dove into mobile development, I began with Titanium.  It was a bit frustrating at first, but the saving grace was the sample project - Kitchen Sink.

When it came time to try Phonegap a few years later, I found many of the same issues.  There was a lack of solid examples.  Or, if you found examples, they were based on the setup where you install the native SDK's through xCode or eclipse.  One of the things I really, really like about Phonegap is the Phonegap Build.  The problem was, it seemed to fragment the other Cordova and Phonegap sample code even more.  It was really hard to tell what the project needed to look like in order for it to work.  But, the idea that a simple solution designed through notepad adhering to modern web standards could deploy to multlple platforms had to be work chasing down.

So I created the Kitchin Sink app for Phonegap/Cordova.  With it, you will find an open-source set of examples for most Phonegap APIs and some approved Plugins.  All writen, without much effort, through Notepad++ with the help of jQuery Mobile.  So, there are also a few jQuery Mobile features in there.

Github: https://github.com/shanabus/phonegapbuildtest

Phonegap Build: https://build.phonegap.com/apps/248969/builds

Currently, I have only been testing with Android against Phonegap/Cordova 2.3.0. The Phonegap Build page at this time supports Android, webOs, symbian, and Windows Phone.  Below is a list of supported API's and notes about the status of ones not fully supported:

Basic APIs

  • Accelerometer - display current x,y,z,timestamp info
  • Camera - allows capture photo, editable photo, choose from library/album
  • Capture
    • Audio
    • Image
    • Video
  • Compass 
  • Connection
  • Contacts
    • Create - limited fields, some issues with date/name data
    • Find
  • Device
  • Events
  • File
    • Directories - in progress
    • File Create - partially working, in progress
    • File Read - partially working, in progress
  • Geolocation - displays coordinates, map coming soon
  • Globalization - in progress where not noted otherwise
    • getPreferredLanguage - functional
    • getLocaleName
    • dateToString
    • stringToDate
    • getDatePattern
    • getDateNames
    • isDayLightSavingsTime
    • getFirstDayOfWeek
    • numberToString
    • stringToNumber
    • getNumberPattern
    • getCurrencyPattern - functional
  • InAppBrowser 
  • Media
  • Notification
    • Beep
    • Vibrate
    • Alert
  • Splashscreen - not really supported on Android
  • Storage - basic DB creation and querying

Plugins

  • Barcode Scanner
    • Scan
    • Encode
  • Google Analytics 
  • Push Notifications - still in progress

jQuery Mobile 

  • Tap / Taphold
  • Swipe (left/right)
  • Popup Panel - still needs love

Yes, if you intsall this you will notice it requires pretty much every permission out there.  That is the nature of this app. Please read the source if you are unformatable with request for these permissions. You will find no abusive code as its just simple Javascript, HTML, and CSS.  Everything else is based on the Plugin system within Phonegap Build.

Also, it does use the Google Analytics in most of the sample APIs to track pages and events.  This is all part of the 'sample' part of this project.  If you care to see the reports I can share them with you.  You jmay also click on the Google Analytics page to see what has been tracked in your session.

I hope you enjoy borrowing code from this project as much as I have enjoyed creating it.  I will update once I am able to add further support for the APIs.  Please contact me if you have any questions.

style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-0113539014102183"
data-ad-slot="7921862077">