Sunday, May 13, 2018

Chinchilla Chat: What We've Accomplished

It's the last day before we on the Chinchilla Chat team present the final status of our Android app. While we were unable to complete some of the tasks we had originally proposed for the app weeks ago, we have created a pretty stable app.

New Features:

  • One more theme. Because we now have three themes rather than two, we "Night mode" option from the menu has been removed.
The spinner on our Display Settings screen.
The main menu with "Cool Theme" applied.
The new About screen with the menu opened, displaying only options for Settings, Blocked Users, About, and Log out.
Cleaner settings navigation. The Settings option from the menu leads to a screen with two buttons. One button leads to a screen on which users can change their username or password. The other button allows users to switch between three themes using a Spinner, or dropdown menu.
Reformatted Settings screen, with just two buttons.
  • Blocking users. Users are now able to block other users, which prevents blocked users from starting new chats with the users who have blocked them, as well as preventing users from starting chats or being paired with users whom they have blocked. Users also have the option to unblock people who are on their blocklist.
  • Chat partners appear in app bar. Instead of displaying the application name, the usernames of people who are apart of the conversation, except for oneself, now appear in the app bar.

  • Chat Now! This feature was created to create new conversations between two users randomly. One user can tap this button on the main menu and be matched with anyone who has verified their account. If users are blocked from communicating with each other, a toast pops up remarking, "Unable to create chat.", and the users are evacuated from the chat, sending the user who attempted the chat back to the previous screen. This happens because users still have a slim chance of being paired with that blocked user, but our application will not allow them to communicate until neither user appears on the other user's blocked list.
    • In the future, we'd like to completely remove the chance of users being able to communicate from each other if the user(s) have added one another to their respective block lists.
  • Leaving Chats. If a user holds on a conversation (a list item) listed on the chat list screen, they have the option to remove themselves from the conversation. Their messages and username will still appear to the remaining users in that chat, but this user in particular will not be able to access the conversation anymore.
    • In the future, it would be better to allow users who remain in the conversation to add users by username to the conversation. This would be implemented for group chats and two-person chats.
    • It would also be helpful to the remaining users if some sort of notification appeared in the chat screen saying something like, "(username) has left the conversation."
  • Firebase rules. We've made it so that data is protected from unauthorized access.

Of course, we had to put some ideas from earlier weeks on hold. Unfortunately, users will not be able to find other users based on identities or interests. In the meantime, a toast will appear, saying that the feature has not yet been implemented.

We also do not currently update usernames and passwords if the user does wish to do so. The text fields are there, with censored password entries and confirmation, but the changes do not actually take place. This would definitely be a mandatory change if we work on Chinchilla Chat in the future.

Our non-working Account Settings screen, showing off password censorship.
Because our Android app was heavily inspired by Avery VanOpdorp's idea, there is a strong possibility that we will consider working with Avery on Chinchilla Chat in the future. We'd increase our demographic to either LGBT+ individuals in the Quad Cities, in the U.S., or even worldwide. This would require restructuring account creation (allowing emails that are not assigned by Augustana College), implementing multiple languages, narrowing down search partners (implementing a functioning "Find a Friend" feature, which we have not accomplished at this time), and finally allowing users to change their usernames and passwords. Vecna has created a working Terms of Service and Privacy Policy, but they are not featured within that app itself. When we release the app for public use (AKA not just Team Chinchilla members), it would be very important to require users to examine these items before completing account creation. They will then be aware of what we ask of them and where their information is stored.

So, as the term wraps up, we're ready to show off our mostly-functioning app that, in all honesty, needs work and more features before it can truly take off. However, Chinchilla Chat currently has a lot of cool features and basically functions as we expected it to when we first began the project.

No comments:

Post a Comment