Ever get confused by all the Facebook events you're invited to? Do you ever wish you could have them all on a neat little map? Event logistics can get disorganized and confusing. ClubHop is here to help you make better, more informed choices about Facebook events you're invited to and which ones you can/should even go to.
Must be using Android 5.0.2 and above, and API 21 and above. The ClubHop team tests their app on a Google Pixel XL (Nougat 7.1.1 API 25), and on a Nexus 7 (Marshmallow 6.0.1 API 23).
- Open terminal and do a git clone of this repository
- Open the ClubHop project folder in Android Studio
- Plug in your Android device via USB (or skip this step if using an emulator)
- Click the green play button in the toolbar to start the app. You'll have a selection of devices to choose from.
Choose the device you want to use (whether emulator or physical) and wait for the app to build and run itself
- The app should launch after a few minutes. On the location request popup, tap "allow"
- The first screen is a Facebook login button. Upon successful login, ClubHop will ask Facebook for the events you have been invited to (excluding the ones you marked "can't go" or "ignore"). It parses the JSON from the API call and initializes its own local copy of your events, then displays them on the map view. You need a Facebook account in order to make use of the app.
Welcome to ClubHop! The app should now center in on your location and show you nearby events.
Tap the marker and its info window to see more information about the event.
NOTE: Events without locations will not appear on the map, so make sure that your event has a location set.
If you need directions to an event, tap the blue arrow button in the corner to open Google Maps navigation.
Use the filter menu in the upper right corner to only display specific events. In this case, there are no events marked 'maybe' in my area
Swipe left to view the nav bar. From here, you can change the map style, log out, or return to the map view
All done! Open the nav bar and tap 'Logout' (or just leave yourself logged in for next time)
🪲 Previously, if the user switched to a different app and then returned to ClubHop, they would have to log out and log back in for ClubHop to display their events again. Our team abstracted out the API calls so that the map can be populated in all kinds of situations (like when you're multitasking on your phone)
🪲 We used to only be able to display events that the user marked 'attending', or 'maybe'. ClubHop now makes a second request to Facebook so the user can see events that they were invited to, but did not respond to yet. This functionality enables us to perhaps implement buttons that can allow a user to change their attending status directly from our app.
🐜 switching quickly between filters makes the toast update kinda slow