<< RETURN: Coding / Android / Android Applications
Overview
HawkerGPS is a simple android application where users will be able to note down any restaurants/cafes/stalls they have been to, and search for them as and when they want in the future.

HawkerGPS was built using Android Studio and uses Room Database for handling its data.
Check out the App on Google Playstore!
Features
Place
A Place as defined in HawkerGPS consists of a Title, Rating (1-10), Budget (per pax), Location, and Description.
I’ve decided not to use Countries or Cities as property fields for a Place because, with international/global shops and restaurants, the organization and display of information would become complicated.
Thus, as users are able to freely edit in the Location field, they will be able to come up with their own structure and format when storing location related information.
Adding a Place
Adding a new Place in HawkerGPS is also incredibly simple!

In the main screen (right after clicking ‘ENTER’), click on the icon, with the house and a plus symbol, in the navigation bar on top. This will take you to the Add Place page.

On the Add Place page, enter the relevant information and press SAVE at the bottom. The information will be added to the database, and can be searched for thereafter.

However, if the CANCEL button is clicked, it will bring you back to the main screen with a notification that nothing has been saved.

Updating a Place
To update an existing Place, on the main screen, tap on the desired Place and it will bring you to the Update Place page.


Similar to Adding a Place, after changing the details of the Place, scroll to the bottom of the page and click SAVE. You will be brought back to the main screen and the selected Place will show the updated information.

If you click on CANCEL, you will also be brought back to the main screen but with a notification that nothing has been updated.

Do note that you can also update a Place from the Search Pages.
Delete a Place
To delete an existing Place, simply swipe left or right on the desired Place. There will be a confirmation prompt, selecting YES at this point will result in permanent deletion of the Place, while selecting NO will simply close the prompt with no deletion.

Delete All Places
In order to delete all places, click on the trash icon on the navigation bar.

Similar to the deletion of a Place, users will be met with a confirmation prompt.
Please be certain when selecting this option as the deletion is permanent.
Filtering Places
To filter the list of Places, select the sort icon (three vertically stacked dashes).

This will cause a drop down menu to appear where you can choose to arrange the list of Places, either ascending or descending, by Title, Rating, or Budget.

To avoid any misunderstanding, the up arrow indicates ascending order and the down arrow indicates descending order.
This sort icon appears in two other places, the Search page as well as the Advanced Search page. They all function the same way.
Copy Place details
The Place details will be copied to the clipboard in the following format:
Title: Title2 Rating: 2/10 Budget: $2.0 =====Location====== 2 =====Description===== 2
There are two ways to copy the details of a Place.
The first way is to tap and hold on the desired Place (a notification will inform you that the selected Place has been copied)

The second way is to select the round button on the side of the desired Place.

A dialog will popup which displays the full information of the Place, as well as a button to copy the details of the Place onto the clipboard. A notification will also appear when the details have been copied. Clicking on CLOSE will simply close the dialog popup.

Users will be able to utilize this feature in the Basic Search page as well as the Advanced Search page. They function the same way.
Basic Search
To navigate to the Basic Search page, users will need to click on the Search icon on the navigation bar at the main screen.


At the search page, users can search the database for their desired Place(s) based on Title, Rating, Budget, Location, or Description.

Note that users can only search based on a single field at a time.
Advanced Search
If a more complex search query is needed, users can navigate to the Advanced Search page by clicking on the Advanced Search icon on the navigation bar of the Search page.


At this page, users can craft their own queries using different fields. Users will also be able to decide on the Boolean logic (AND/OR) that joins different queries together.

Finally, to remove queries, simply swipe left or right. There will be no confirmation prompt in this case, only a notification that the query has been deleted.

Exporting Place database
For redundancy of the database, users can export their database to the Android Device’s Clipboard and store it in a separate location themselves (e.g. ColorNote, Google Keep notes etc.).

The export database menu button is located in the above screenshot. After clicking it, your entire database will be copied to the clipboard.

After which, the mode of storage will be up to the users. I’ll advise using any Notepad android application.

The above screenshot shows my TODO list application which you can check out on Google Playstore.
Note that the data is exported in a XML format.
Importing Place data
If and when your data is lost, or if you just wanted to import some places in a different manner, you can go to the Import Place page. Users can navigate to the Import Place page by clicking on the Import menu button on the Main page.

After clicking on the Import menu button, users will be sent to the Import Place page.

To import data, paste the data into the field and click on the Import button.

Go back to the Data view page, and you’ll see that the new Places has been imported.
Upcoming Features
- TBD