A little background
I'm currently a novice programmer eager to learn how Android apps. I believe that I learn best by challenging myself, so I'm trying to make a simple student companion app. In the process of making it, I hope to acquire at least a few of the skills necessary to become a good Android developer.
Goals of my app
As I said, my app is going to be a simple student companion app, it would help students organize their academic life a little. My situation is as such:
My app is going to target a very small of group of people - about 150 at most.
It will help students keep track of which classes they have attended and which ones they missed.
It will display current schedules of the courses.
It will have a calender showing holidays, as well as upcoming exam dates.
My Problems
How should I store each student information? Should I store it offline in their own devices? I don't have any real need for data collection of all of my users.
How do I push tiny changes to, say holiday dates? Some of the religious holidays are tied to different calander systems and thus are aren't held in the same date every year
Similar to the above problem, exam dates are fixed by its respective teachers, and thus I need a way to mark exam dates on the calender as they are announced.
How should I approach these problems? I could create a custom server and have my app connect to it and check for updates, but as a beginner I feel this is a bit more than I could chew. Is there any existing services I can integrate my app to, to do all of the above (say Facebook)? What things should I invest my time learning to tackle these problems?
P.S. As my question is not directly about a coding problem, I understand that it might not be a good fit for Stack Overflow. I would happily edit my question to fit the standards of Stack Overflow or even move it to any other Stack Exchange sites on your suggestions.
You can store the information either in a sever preferably in json so it is easy to edit and use even in the app and sync it.Use a recyclerview with a volley library for easy sync and offline storage
You can also use an sqlite database in the app. Every time the app is opened you can check with server and download it
There are plenty of tutorials so it should be easy even for begginers