Bryan L
05/26/2021, 3:29 PMDay 59
• Continue building Note App for course
◦ Finished with Updating Notes section
▪︎ Implemented ColorPickerDialog that saves color on rotation change
◦ Implemented ability to Delete Notes
▪︎ Can delete notes offline, when later synced with server, instead of getting missing notes, it will make sure to delete from server instead
▪︎ Fixed bug that allowed swipeRefresh to cancel swipeDelete. swipeRefresh now disables when performing swipeDelete action
◦ Implement Sync Notes (before, notes only synced when launching the app)
▪︎ swipeRefresh now syncs notes with server
Self-Comment
• I think recreating Daily Doc as a whole would be faster to implement all of these features, however I do need to work on refactoring and working on an existing project. So I'll continue with my original plan and do the latter.
• A lot of event & resource handling. I haven't had an issue with this in my previous project(s) although I see how it helps bugs coming through and displays errors when they occur.
Day 60
• Continue building Note App for course
◦ Add functionality to show notes in detailFragment & parse markdown content of notes
◦ Add functionality to add other owners(users) to a note for them to also have access to it
▪︎ Fixed issue with "Internal server error" when adding another owner to a note
Self-Comment
• I'm not sure why I hadn't thought about using a markdown library previously! This will save me a lot of issues and help clean up how I display notes in DD. 🔥
• Will definitely be using a lot of similar code when I implement these features, however since Compose is different and I'm not using Fragments/XML, I get to do a lot of the work myself. This should help me get a much better understanding.
• Had an issue with Internal server error when adding an owner to the note. Since I am handling errors, I was able to identify the error with ease. That being said, I spent quite some time finding what was causing the error
◦ Checked to make sure adding an owner works on the server using Postman ✅
◦ Checked to make sure the device is working with the server via synced method ✅
◦ Checked postman again using "noteId" instead of "id", it replicated error I was having on the device
▪︎ Took just over an hour to fix. I had checked that the server addOwnerRequest parameters contained "owner, id", however I overlooked the client-side project addOwnerRequest in which contained fields "owner, noteId". Parameters in request need to match the server! 🤦♂️
• Finishing up the course tomorrow_(today actually. this was left as a draft message and never actually hit send message)_ & then get to implement it again in DD! . I could easily re-use the same ktor server I built, however I'll start from scratch to familiarize myself with the codebase again Kandroid dance