Friday, November 18, 2016

Week 9 Accomplishments

      For this week, I wanted to work on connecting both of my apps to the database and test some of those functions, but I did not get very far with that goal. But I was able to finish creating all of the pages for each app, and even though a couple of the pages still need some work, I am happy to at least have something set up for them.

      For my Android app, I created a Contact Us page and a Help menu pop up. The Contact Us page took a while because I had to figure out how to use a MapView. And then I tried using a Geocoder in the app, but it would randomly fail, so I decided to just hard code the latitude and longitude for where the marker would appear on the map. There is also a link that opens the number for the Alumni Association in a calling window, and the link with the address opens up Google Maps. The Help menu is simply a list of things that the user can do with the app. I was to have icons with my help menu, and it is not quite laid out correctly yet, but I was just happy I got something to be able to pop up. I also was able to go a bit farther with my database connection than I was last week, and now, the app calls the database and returns all of the users. It is not something I am probably going to do with the actual app, but I just wanted to be able to text the Async functions and I needed something simple to test it with.

       For the Apple app, I did not create any more pages, but I did try to fix a few of the pages that were having some layout troubles. I still do not understand XCode's layout system, because I would do the exact same thing on all of the pages for the layout and it would work on some of them but not all of them. But overall, I am happier with how the layout works than what I was before, so that is good. I still need to set up my HTTP client so I can start connecting this app to the database, but I have realized I am a bit of a perfectionist, and that is what is taking me so long to get around to that part of the app.

       Although I did not get very far in the realm of setting up a connection between the apps and my database, I started creating some procedures and triggers for the app. One of the procedures is for when a user creates an account. It makes sure that the email is not already associated with an account, and then it will create the account. There is also a procedure for when a user completes a tradition. Right now, I have it so if the tradition has already been completed by the user, then it will not let them complete it again, but I might end up changing how that works. The procedure also verifies that the user account is a valid one before it allows them to try and complete the tradition. There is also a trigger that will occur after a row has been inserted into the CompletedTradition table (so after a user completes a tradition), and it will create a record in the StudentLevel table if the tradition that was just completed puts the user at either the 10, 20, 30, or 40 tradition completed level. The trigger may have to go higher or lower depending on how many traditions the app ends up having, but that seemed like a good place to start. The trigger will also set the user's CompletedAll field to true if the tradition the user just completed signifies that they have completed all of the traditions.

       For next week, I am going to work more on connecting to the database and setting all of that up, and I hope to have more time over Thanksgiving break to work on some of that stuff.


The Contact Us page for the Android App
The Help menu for the Android app

No comments:

Post a Comment