“Image Gallery Application” with inApp feature V/s Multiple Volumes
While reviewing one of a Sales lead for a customer, we came across a situation when the client had below scenario.
They wanted us to develop an “image gallery” app for the iPhone/iPad which allow the users to scroll through a series of images that they have created.
Secondly they also wanted to have the functionality that allow the users to purchase additional images for viewing as well, for easy understanding lets call each set of Images as “Volumes”
Now the client was not exactly sure if the implementation of in the inApp Purchase feature was easer or offer each Volume as a separate individual app.
====
Now lets look at how inApp Feature works in the above case.
There are 2 scenario for inApp Feature:
Senario #1
In case if you already have all images that can be bundled in Volumes and you do not expect these volumes to be updated very frequently.
>> In the above case, what we can do is pre-bundle each volume inside the application and upload the application on iTunes.
>> We will implement inApp purchase feature to unlock each volumes on a purchase request.
>> When a purchase request is made for a volume, a inApp purchase request is sent to iTunes server, payment is processed by iTunes, when confirmation token is received for successful purchase, we unlock that particular volume and is now user can view the images for that particular volume.
>> Limitation / disadvantage of implementation of this approach are:
a) Since all images are pre-bundled inside the application, the size of application will grow very big.
b) If you want to add a new volume after couple of months, then you will have to add that volume inside application and upload a new binary on iTunes store as a new version.
>> Advantages of implementation of this approach are:
a) You do not have to create or have a web-server to host all Volumes
b) There is no need to create any XML file or Webservice (API) on the server
c) This is good approach when you have limited budget and expect 4 to 5 version updates a year.
Senario #2
In case if you already have all images that can be bundled in Volumes and each few week you expect to release new volumes, lets take example of a monthly magazine which has a new release each month.
>> In the above case, what we can do is have a server with web services & database, create a simple Server control panel code which enables the Admin of this application to upload new volumes on server.
>> Then when user selects the “View Volumes” button on iPhone, we shall call make a server call through API to get latest updated volume list and prices for each volume.
>> User selects the volume he want to purchase, a purchase request is sent to iTunes server, after receipt of confirmation token from iTunes server, we record the User Device ID and iTunes purchase token on our server for audit trial and then push the Volume to users device.
>> Limitation / disadvantage of implementation of this approach are:
a) Cost of server, web services and server maintenance is high
b) If the server is down / not functioning, the user will have bad experiences
c) User will gets notification when he look for “View New Volumes” and if you want users to be notified through push notification, then there will be additional cost to implement the push notification.
>> Advantages of implementation of this approach are:
a) This entire application becomes dynamic in nature
b) Easy to update volumes and ability to add new volumes
c) You can use the same server code and Web-services API if you want to port this application on Android or blackberry (remember those devices do not have inApp purchase features, but there is a way around)
d) If you want to accept payments by credit card or through third party payment gateways and not pay apple 30% for each transaction, then the server code can be expanded to handle the same.
=====
Now lets look at offering multiple each volume as independent apps (volume 1, volume 2, volume 3, etc)
>> This is a very simple and less costly approach, basically you need to create a Base Template application, then when you want to put-up or launch a new Volume, what you do is use the Base Template application, change the images / resources folder with new images, change the name of application like “Image Gallery Vol 1″ …. “Image Gallery Vol 2″
>> Upload this new volume to iTunes and once approved its there for users to download.
>> Limitation / disadvantage of implementation of this approach are:
a) User have to maintain 10’s of individual application on there iPhone, (but with new iOS 4.0 feature, user can now have folders.. isn’t that a great feature
.. thanks to apple team for such a brilliant feature)
b) You will need a Mac Computer with iPhone SDK and have very basic knowledge of how to create a new binary and upload that as new app on itunes.
>> Advantages of implementation of this approach are:
a) Lot of saving on pocket $$$$, this is less costly approach.
b) If you have volumes in various categories like “Wild Life Images in volume 1″, “Vintage Car Images in Volume 2″ etc.. this approach of having individual volume is highly recommend, because you can add those category details into the name of application and description of the application, which is easily searchable on iTunes. Lets say I am fan of Vintage Cars & like to know about various apps of Vintage cars, what I normally do as a iPhone user is go to AppStore app and type “Vintage Cars” in search, now if my application is listed as an stand alone app or as separate volume, the search will display that particular app in search result and in-turn my chances of download are increased many times.
c) But if the same approach is implemented through InApp feature, there are no changes that “Vintage Cars” Volume will be displayed in search result, only my users will have to know that my inApp feature enabled app deals with various categories and they have to look for “Image Gallery App” in search to reach me.
Summery:
Depending on what you want to put on iTunes as an app and how much budget you have, we provide you various services.
In a nutshell we can say :
a) If an application that has to be implemented as stand alone app or independent apps for each volume development cost of such efforts can range between USD $700 to USD $1500, depending on how much custom graphics animation you want to implement, lets say if you want to implement cover-flow style of browsing images or social networking elements in this app like twitter or facebook, the cost can go unto USD $3000 to USD $4500, so lets us know know many features you need and what are your budgets, we can provide you best solution.
b) If you want to pre-bundle images and implement simple inApp feature then add USD $500 to USD $750 to above cost of basic version. The cost can increase decrease in terms of how the user interface needs to be implemented.
c) If you expect frequent update and want to make this application more dynamic, then its better to have Webserviecs developed on server, the cost of developing webservices alone will be between USD $700 to USD $1750 (we can do the same in PHP/ ROR or DotNet) plus implementation & processing of those webservices, push notification etc.. will overall add a big cost, but in general the entire solution can cost between USD $4000 to USD $7000
We offer free consultation to our clients and support them in create rough napkin drawings about the entire flow of the application depending on your budgets and offer end-to-end solution starting right from idea to making the application live.
So, lets get on a Skype or gTalk Chat and talk through your requirements, Contact us now.
