0

I'm new to app development and I am soon going to be developing an app for a local charity.

The charity is a dog rescue charity and the app will display information about dogs available for adoption.

The content will obviously need to be updated frequently, even daily, which will obviously not work constantly updating the app via the relevant app stores. What is the most common way to deliver content to an app?

My thoughts on previous experience would be to create a REST API and deliver the content remotely. Would an app allow this? Is there a method more generally used?

Thanks in advance.

Kieran Jennings
  • 321
  • 2
  • 12
  • 1
    Look into using something called a push notification. You can broadcast the latest information to all your apps. – Tim Biegeleisen Jul 31 '17 at 01:43
  • From my understanding, push notifications just notify the user of an event (I could be wrong). My question was actually retrieving content to display on my app, such as text and images. – Kieran Jennings Jul 31 '17 at 01:47
  • Get the push notification to inform your app to pull new data from your servers via REST APIs. Examples online abound. – Morrison Chang Jul 31 '17 at 01:54
  • So, for example, I can create a REST API that gets all dogs information from a database and then the app can retrieve this information using the REST API. What is the benefit of using a push notification rather than just pulling the content from the REST API when the app is opened? – Kieran Jennings Jul 31 '17 at 02:03
  • None if the app has no need for a near real time notification of new data (i.e. every few hours). How you handle displaying stale data vs new data when the app opens and is still downloading new data is up to you – Morrison Chang Jul 31 '17 at 02:13

2 Answers2

0

I see you don't have clear specification on how often to update the app content and technical capability.

Use JobScheduler

Syncing to the backend (via REST API)to fetch the data is a battery drainer & there is no use in syncing data on device which is about to die, I would prefer Jobscheduler which will intelligently act as per various environment criteria met like charging/idle.

There are several facilities available to help your app schedule work. These include:

  • AlarmManager
  • JobScheduler
  • SyncAdapter

Caution: Exponential backoff is enabled on job dispactchers/schedulers

For 24-hour logic check here

Mani
  • 2,599
  • 4
  • 30
  • 49
0

You can save all the information to show of each dog available to adoption in a database, then make the app retrieve all the data from it every n time.

I recommend you to use Firebase, it is cross-platform (includes Android and iOS), and I consider it really good when starting using databases.

Here you can find documentation for every supported platform, and easy examples on how to work with it.

Good luck with your project! :)

thecalin
  • 106
  • 1
  • 1
  • 6