Home » Case Study » Religious Mantra Chanting App

Religious Mantra Chanting App

Categories : All, Case Study, Media and Entertainment, Mobile and Wireless

Religious Mantra Chanting App

Client Requirement


Religious Mantra Chanting App application has been developed to run on both iPhone and iPad devices. It is an initiative towards spreading religious awareness. This makes accessing Shlokas and its meanings easily while users are on the move. It is a neat application that required efforts for placement of total 220 high graphic images and high quality audio files. The images and audio files synced with defined timeslots.

Client expected the following:
  • Portrait mode for iPhone
  • Both portrait and landscape mode for iPad
  • App should support heavy graphics and audio files, for quality, without impeding the performance
  • Synchronization of images and audio according to the defined timeslot
  • Image should not be repeated while shuffling from portrait to landscape mode or vice -versa
  • When the application is interrupted, it should not stop; rather, the app must automatically pause and continue when user launches it again
  • Attractive look and feel
  • Incorporating Custom Player Control to manage audio

Project Challenges

Team faced the following challenges:
  • Managing heavy graphics and audio
  • Avoiding multiple image use for orientation mode
  • Maintaining minimum images, no repetition
  • Every two Images’ synchronization with track time

Technologies Used

Xcode 4.2.1 Xcode is a tool, also called as IDE, used to develop iOS and Mac applications. It is a main component of Xcode toolset. It groups most of the tools needed to develop software in a streamlined and interactive manner.
Sqlite Frame work This framework allows developers to quickly create and use a local SQLITE within iPhone, iPad, iPod devices.
iOS sdk 5.0 iOS is a software development kit used to develop iPhone, iPad applications specific to OS versions as required by the user.
Core Data Frame work The Core Data framework provides generalized and automated solutions to common tasks associated with object life-cycle and object graph management, including persistence.


Project Leader 1
Developers 1
Designers 1
Quality Assurance Testers 1


The following development approach was adopted to equip the site with nume rous features
and functionality mentioned be fore:
  • Introduces high level of server and data fetching technology.
  • The User Interface Layer, which forms the Graphical User Interface of the website.
  • Development – High Level Coding Standards has been followed for managing backup data volume,simultaneously synchronization with server for recent updates.
  • Syncing existing and new ly available data for backup with our database required specific attention. This helped in result generation.
  • Research and analysis has been scheduled to get the actual level of output of data, which are in a form of different verticals and business logics.


Application Life Cycle

The application life cycle constitutes the sequence of events that occurs between the launch and termination of your application. In iPhone/iPad OS, the user launches the application by tapping its icon on the Home screen. Shortly after the tap occurs, the system displays some transitional graphics and proceeds to launch your application by calling its main f unction. From this point on, the bulk of the initialization work is handed over to UIKit, which loads the application’s user interface and readies its event loop. During the event loop, UIKit coordinates the delivery of events to your custom objects and responds to commands issued by your application. When the user performs an action that would cause your application to quit, UIKit notifies your application and begins the termination process

The follow ing figure depicts the simplified life cycle of an iPhone application. This diagram shows the sequence of events that occur from the time the application starts up to the time it quits. At initialization and termination, UIKit sends specific messages to the application’s delegate object to let it know w hat is happening. During the event loop, UIKit dispatches events to your application’s custom event handlers.

Figure: Application life cycle

image 1

Event Handling Cycle

After the UI Application main f unction initializes the application, it starts the infrastructure needed to manage the application’s event and draw ing cycle, which is depicted in the following figure. As the user interacts with a device, iPhone/iPad OS detec ts touch events and places them in the application’s event queue. The event -handling infrastructure of the UIApplication object takes each event off the top of this queue and delivers it to the object that best suited to handle it. For example, a touch event occurring in a button would be delivered to the corresponding button object. Events can also be delivered to controller objects and other objects indirectly responsible for handling touch events in the application.



Figure: The event and drawing cycle


In the iPhone OS Multi-Touch event model, touch data is encapsulated in a single event object (UIEvent). To track individual touches, the event object contains touch objects (UITouch), one for each finger that is touching the screen. As the user places fingers on the scre en, moves them around, and finally removes them from the screen, the system reports the changes for each finger in the corresponding touch object.

When it launches an application, the system creates both a process and a single thread for that application. This initial thread becomes the application’s main thread and is w here the UIApplication object sets up the main run loop and configures the application’s event -handling code. Figure shows the relationship of the event -handling code to the main run loop. Touch events sent by the system are queued until they can be processed by the application’s main run loop.

Figure: Processing events in the main run loop


Development Highlights

This application for iPad is built around objective C and core data framework. The design for each screen is implemented using the storyboard framework, which is newly integrated for iOS 5.0. This application was also made compatible to iOS sdk 5.1 at a later stage. Almost all the modules are developed using foundation, core graphics and UIKIT frameworks. All the user interface items are placed in view controllers that are linked with the controller files project along with the outlets, actions of the UI element. The site was developed and fully functional within a span of 50 days.

No ratings yet.

Rate Us!