Before I even join the udemy Android Tutorial class, I already created a tablet app that runs on android – that we sold back then to a restaurant owner here in Manila. I created it for my former start up company (Peppermint Software Labs) as part of our product line up.
The Application Design. Basically we need a tablet app where the customers can just order via the tablet, the tablet then will send the orders through the server that will display the orders via a screen on the back. The orders should be queued accordingly and should have the necessary information for the crew at the back to do the orders.
The Technologies. I used CI (CodeIgniter) for the backend application and Android Platform for the mobile application. We had an assumption to run this only in Android so no need to port this in iOS.
The Mobile Application version 1. It started as something like this, I used JQuery Mobile and PhoneGap Web Browser to launch the application – but as it turns out, it’s a bit slow. JQuery loads a lot of graphics to it’s components with the addition of bootstrap components. It killed the intuitively that I sold to our customer. So I literally got back to square one and just settle first using the Android Native Platform.The Mobile Application version 2. Same UI concept but I used Android Components. It wasn’t that straight forward and it almost took me 2 weeks to re-create everything from scratch and match it to what we presented to the customer (a tiring week that was).
The initial screen will ask for an admin account first. This will allow the technical staff to configure each tablet and point it to the correct server where the app will throw the orders data for the backend staff.
The Order Screen! Simple and elegant but quiet web-centric (influenced by my web development/ design perhaps?). Panels on the left are Categories and order list – these are floating panels that can be swiped out if not needed so that the user will have more room to appreciate the HD images of the menu itself.
The Server Application Itself. Backend App. Once the customer gives the order, boom – it goes to the backend, automatically saves it on the database and the app displays it (Ajax Polling).
It’s one of those not very sophisticated design for an application, but it does the job. It does what the owner wants. I even put delivery process, take outs, additional orders. One improvement though is table merging and that’s next on my list.
Overall, I had a great time doing this, even under the pressure of delivery. One of my goals is to become a full stack developer and this experience definitely propel me to understand the concepts behind developing an Android Application. It was really a great learning experience for me to begin with and I’m looking forward to doing more of these in the future.