I have a web application which is a pretty standard SAAS database driven app. I have a few customers asking for iOS or Android versions of the app. Is it better to build an API on the web app which is then used to drive the native mobile apps UI? This would be simplest but mean the mobile apps are not 'stand alone'. Alternatively I could try and implement a full mobile solution that then synchronizes with the web app somehow. This would be much more work as all the business logic needs to be build into the mobile apps rather than behind the API.

What is standard practice for this kind of thing?

  • 1
    Not sure about the "standard practice", but I would go with building an API as you suggested.
    – Bernard
    Commented Dec 15, 2011 at 22:55
  • Yes, I am favouring that method as well. Just wondering if anyone has strong opinions on why it would be a bad idea.
    – Craig
    Commented Dec 15, 2011 at 23:07
  • -1: This would be simplest but mean the mobile apps are not 'stand alone'. - Huh? How 'stand alone' can a SAAS database driven app possibly be?
    – Jim G.
    Commented Dec 16, 2011 at 2:44
  • You can have a SAAS web based version and a stand alone version that synchronize.
    – Craig
    Commented Dec 16, 2011 at 3:41

2 Answers 2


You may want to ask yourself a few questions. Do I want the app to function without an internet connection? How clean do I want the app to run? Are there any features I'd like to incorporate that are native to the devices? Do I care whether or not the app 'feels' native to the device?

As an iOS developer I've had to sit down with clients and sometimes my boss and go over these very questions. Sometimes we discover that, while what we had initially planned could be done with a web app, there are features we could incorporate through writing specifically for the device that was never an option before.

  • 1
    We do plan on building native apps, but they would be using our own API. Just like a Twitter app uses the Twitter web API. So the biggest consideration really is whether it needs to run without an internet connection.
    – Craig
    Commented Dec 16, 2011 at 0:37

If you are looking for "standard practice", I think the answer would be to build a single API that all/most front ends use. No reason why your webpage and your Android application can't be making the same API calls.

In reality, it all depends. What does the application do. Does it need an internet connection to get the latest data? If it was a standalone application, how much data would be required for it to function. I think it is hard to give the "right" answer without more details about what it is supposed to do.

  • Yes, I will plan on building the API and then migrating the web version to use it as well. So eventually all 'front ends' would be using the API.
    – Craig
    Commented Dec 16, 2011 at 3:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.