of 8
8/3/2019 R Evolution Feb05
1/8
Newsletter for the Developer Community
Dear Developers,
'I have never allowed my schooling to interfere
with my education,' said Mark Twain,
commenting on the lack of fun in learning in
schools.
Education is serious business but it can be madefun. To approach learning as an onerous task
renders the same dull and dreary. The future
belongs to children and adults who adapt
themselves to the new environment where
creativity is valued. One can learn a lot from
solving problems that are game-like in their
content. That's why interactivity forms an
essential part of the new learning process. The
ubiquitous mobile phone is an ideal platform
where edutainment and interactive applications
can transform serious activity like education to a
fun filled experience.
In our Application of the Month section, readmore about the 'Ncyclopedia' application
developed by Itellix, where a voluminous
encyclopedia is squeezed into your hand phones
for easy and interactive reference.In order to encourage participation of the DADP
member community in R-evolution, by way of
articles, tips, feedback and suggestions, we
welcome you to write in to our 'Interactive'
section.
In our Technology Tips section, we continue with
our articles on Reliance APIs. In this issue, you
will find illustrations for use of the Util APIpackage for creating Reliance specific
applications.
Looking forward to receiving your useful
feedback and valuable suggestions.
For Private Circulation only
Dhirubhai AmbaniDeveloper Programme
Tech TipUtil API
Application of the MonthEncyclopedia
Interview of the MonthNitish Mittersain
Nazara Technologies
QuizInteractive
February 2005R-evolution-evolution
www.dadp.comR-evolution EN/2005-2
- S P Narayanan
Editorial
Blending educationwith entertainment
JDTS
http://www.dadp.com/http://www.dadp.com/8/3/2019 R Evolution Feb05
2/8
he tremendous growth of mobile phone usage in India,
Tcoupled with the launch of a variety of dataapplications in the last few years, has led to anunprecedented upsurge of interest among the developer
community. Exploratory efforts are already on to find out
the possibility of creating innovative and useful
applications. One of the areas currently being examined is
mobile edutainment, which is poised for a big boost, thanks
to its useful content and mass-market appeal. The word
'edutainment', coined in early 1990s, is a judicious blend of
education and entertainment. It simply means 'educational
entertainment'. Edutainment applications, as the name
itself suggests, can be classified as applications that impart
some knowledge, information or learning (covering
different areas / topics) in a fun, enjoyable and
entertaining way.
The 'bonding', community-building and interactivity
aspects of mobile entertainment applications find a real
and meaningful extension in the 'edutainment' genre of
applications. Imagine a game that helps children learn
basics of mathematics or increases their knowledge ofgeography and history. Though concepts like these have
already been tried on television, PC, Internet and
CD-ROM based media forms; mobile-based edutainment
is a niche by itself and is producing a significant
change in this domain. What is essential for mobile
edutainment applications to be successful is the quality of
content and skillful designing. Thanks to handset
improvisations
and rapid advancements in mobile
communication technologies arena, which permit faster
and greater quantities of data to flow, edutainment is rapidly
growing.
Learn while you play
Games, which give users a feel and knowledge about
heritage, science, culture etc, are being developed in
- including availability of wider screen
handsets -
Lead Story
www.dadp.com 2R-evolution
entertaining forms of presentation. The best part is that
games have an enormously huge audience and popularity
among all sections of mobile users. Therefore, they are
that much more effective in disseminating information and
knowledge.
In the multimedia and ringtone categories of services,
there are a lot of possibilities of innovation in development
of applications in the form of images and calls of birds and
animals. Even applications dealing with nature, wild life,
adventure, history and culture hold a lot of potential for
success. This is corroborated by a recent report by the
research consultancy Mobile Youth, which has suggested
that the number of under-sixteen in the UK owning mobile
phones has grown to 5.5million, an increase of nearly half a
million over the last year. Interestingly, the report says that
the growth in 2004 was driven by primary school children
(five to ten years old) getting their first phone. If one
imagines this figure for school children in India and the
multilingual challenge they pose for any such application,
then one can understand the enormity of the scope,
demand and possibilities.
There are several instances of brainteasers, quizzes,
puzzles and games that have been launched by mobile
operators across the world to build
an attractive mobile edutainment
bouquet of services for consumers.
T h e b e s t p a r t i s
that these applications allow
people, mainly teenagers, to use
the mobile phone as a smart
learning tool anytime anywhere at
their own pace and convenience.
An example could be an application
like mathematical quiz that would
tes t t he use r s numer i ca l
ability/skills in a fun and entertaining
way. Or even a language-learning
Blending education with entertainment
http://www.dadp.com/http://www.dadp.com/8/3/2019 R Evolution Feb05
3/8
www.dadp.com 3R-evolution
tutorial where one can learn different languages in a step by
step manner can be quiet popular in a developing country
like ours.
Initiatives by Reliance
Reliance has already launched a couple of applications in
its R-World suite of data services that fit the 'edutainment'
definition. Two of the most popular of such applications are
Mobile Dictionary and Mobile Encyclopedia. With these
two applications, the RIM user can now boast of a miniature
'pocket dictionary' and a 'pocket encyclopedia' - always
available and anywhere. The Encyclopedia is a digital
archive for information seekers of all ages. Users can do a
search on various topics like science, politics, geography,sports, etc and can find out required information in a jiffy.
The Mobile Dictionary helps a consumer find the meaning
of any English word, with the ability to have the meaning
displayed in English, Hindi, French, German or Spanish.
The reverse is also possible.
Itellix, a mobile application developer from Bangalore with
technical support from DADP, developed both these useful
applications. Both were three-tier, J2ME based
applications, specially designed to handle heavy loads of
over 100 simultaneous requests and more than a million
requests per day. A key feature of the solution is the ability
to display the results in Indian scripts such as Hindi, making
the application accessible to a much larger population in
India. The application design is flexible - making it possible
to support other language dictionaries in future without
change in code.
'Kidzworld' is another such application on R World for kids,which informs in an entertaining way. Features such
as 'FactMonster' in the application provide
information on favorite pastimes like
P o k m o n a n d H a r r y P o t t e r .
Whiz Kid' tests childrens' knack for
math, cartoons, wildlife, and more. To
make it engaging and interactive,
there is a scoring system, which
allows one to see his/her name on the
Whiz Kid Top Scorer List. The 'Word
Wizard' section allows kids to know the
meanings of words.
As a result of the increased use of mobile
communications, it is expected that the use of edutainment
in mobile environment will be very significant in the future.
For developers and operators, the challenge is to gather
sufficient feedback from consumers, in order to
understand their expectations of edutainment content. The
future of providing compelling edutainment services on the
wireless environment depends to a significant extent on
the development of technologies, and consumer's
behavioral patterns.
The propect for edutainment
applications in the coming days
can be best summed up in the
words of Hilmi Quraishi, Chief
Learning Technology Officer, ZMQ
Software Systems, a DADP
developer. Mobile handset is the deviceand edutainment is the style. The blending of the two can
revolutionize education, especially in rural India,
where there is a greater need to train and educate semi-
literate and under-privileged communities. And
R-World is the right channel to disseminate these
edutainment solutions.
Clearly, the potential for educational applications is
huge; and with improvements in technologies,
transmission speeds, advanced mobile devicesand a burgeoning mobile population, it is one
area, which promises 'good times' for mobile developers
in India.
Hilmi Quraishi
http://www.dadp.com/http://www.dadp.com/8/3/2019 R Evolution Feb05
4/8
Tech Tip
www.dadp.comR-evolution
he Util package consists of utility classes that can be of use to developers while developing
the client side of any application.TUtil package consists of two classes, namely ResourceBundle and ProgressScrn. Out of these,
ResourceBundle is more important from the functional point of view. This is a utility class, used in
multi-languages to enable an application, while Class ProgressScrn is important from the feature point
of view and is used to display the progress screen on the client when the client is waiting for something to
happen - like getting a response from the server.
ResourceBundle class dynamically determines the language enabled on the device and loads the corresponding
resource class. If the resource class for that language does not exist on the device, it switches to English language and loads the
English resource class. Resource bundles contain locale-specific objects. When the application needs a locale-specific resource, a
String for example, the application can load it from the resource bundle that is appropriate for the current user's locale. In this way, one
can write a program code, which is largely independent of the user's locale, isolating most, if not all, of the locale-specific information in
resource bundles. This class can be said to be a scaled down version of ResourceBundle class available in the java.util package ofJDK (Java development kit). The members of the ResourceBundle share a common base name, but at the same time have additional
components that individually identify them.
ResourceBundle consists of a field named resourceand two methods, namely getBundle() and get(). The Application using resource
bundles can get a ResourceBundle object using the getBundle() method. The Reliance.language property helps the application to
determine the enabled language on the device. The method getBundle() needs two string input parameters, namely resource name
and locale. The method throws up a MissingResourceException, if the resource class does not exist. The method get() is used to get
the value from ResourceBundle for the specified key, which the method takes as input. If a MIDlet does not contain the resource class
for the currently enabled language on the device, the getBundle method returns the ResourceBundle object with the English resource.
If the developer uses resource bundles for enabling languages in his/her applications, then the application jar must contain at least the
English resource class.
ProgressScrn is a class used to display the progress screen when the application is busy in performing some activity that needs time
and the user has to wait for a response. The class extends javax.microedition.lcdui.Canvas and implements java.lang.Runnable. The
class has four methods in it, namely start(), stop(), run() andpaint(). As the name itself signifies, start, stop and run are used to control
the animation and paint is used to paint the screen.
The sample code of the ResourceBundle is given below. Further details can be obtained from the documentation of the APIs available
in the resource section of the DADP website (www.dadp.com).
Util Package of Reliance APIsUtil Package of Reliance APIs
4
String currLanguage = System.getProperty("reliance.language");
try
{rd = com.reliance.util.ResourceBundle.getBundle("com.reliance.someapp.Resource",
currLanguage);
str[0] = rd.get("MSG_ID1"); // option Astr[1] = rd.get("MSG_ID2"); // option B
// add option A, B in a listmain = new List(rd.get("MSG_ID8"),Choice.IMPLICIT,str,null);
}
catch(Exception e ){
e.printStackTrace();}
http://www.dadp.com/http://www.dadp.com/http://www.dadp.com/8/3/2019 R Evolution Feb05
5/8
ince information holds the key to the success
of an offering like the R World,
SEncyclopedia is a comprehensive digital archive designedfor both depth of content and simplicity for information
seekers in all age groups. Users of this application can
search for information on varied subjects like science,
politics, geography and sports, as well as learn about
historical events from its vast database. The application
also allows subscribers to make queries in plain English,
and can search a billion words and quickly return with the
requested information.
As the Encyclopedia application had to
p r o v i d e t h e u s e r w i t h
information related to any
particular topic of the
users' interest, the
f o l l o w i n g
requirements were
incorporated.
1. A searchable
encyclopedia that
returns a fixed
number of matches
that can be viewed to
get the detailed text of
an article. For this the
user has to choose the
option and type in the key-word.
The results are fetched from the
database matching the key-word. For example, if the userwants information on Sachin Tendulkar he can key in
Sachin Tendulkar and the required information will be
displayed on the screen.
2. A category based lookup on articles. The menu contains
a fixed number of major categories (Culture, Sciences,
Arts Sciences, Sports, Social Sciences, etc) and a fixed
number of sub-categories for
e a c h c a t e g o r y . T h i s
information helps to refine
the search. Once the userchooses a sub-category
he/she again types in a
Encyclopedia
and Dictionary have always been on the radar
of Reliance.
key-word and the
results are fetched.
3 . A r a n d o m
l i n k f e a t u r e
(link of the day) that
allows for a different entry to
be shown each time a query
is made.
The search mechanism has been refined to the extent that
in case a user in unable to remember the exact name of the
article he wants to find he can still get the same by typing a
few key words. Care was taken to find suitable content toincorporate the database for all categories and sub
categories. This was very important as otherwise the user
could end up with multiple unrelated search results without
finding what he was looking for. A suitable database has
been put in place, courtesy www.wikipedia.org.
As the content size is huge and the
customer can search for any
keyword, which can throw up
numerous results, the logic of
s e a r c h i n g b e c a m e v e r y
complex. This was tackled by
defining the frequently used
categories and subcategories.
Besides, there were several other
challenges. The application size was a
crucial aspect as mobile devices have a limited memory. A
few modifications were incorporated in the screen shots to
increase the performance speed in fetching records from
the huge database. Another challenge was the offshore
development and testing. All these were successfullyaccomplished and managed by both, Reliance and Itellix
teams, whose combined efforts made this application a
success, says Pradnyesh Naik, Product Manager for
the application.
Encyclopedia is one of the popular applications on R World
and receives a good number of hits every month.
Application of the Month
www.dadp.com 5R-evolution
Encyclopedia at your fingertipsEncyclopedia at your fingertips
Pradnyesh Naik
http://www.dadp.com/http://www.dadp.com/8/3/2019 R Evolution Feb05
6/8
Interactive
www.dadp.com 6R-evolution
If your query is selected by the DADP technical team, as the most innovative and challenging of all postings in a month, you will win a
surprise gift. And yes, your query along with your photograph will be published in 'R-evolution' as well! So visit www.dadp.com, register (if
not registered already) and start sending in your queries.
2ME is one of the most popular platforms for mobile devices.
All major device manufacturers have embraced this platform
Jto enable developers realize new possibilities in computing.Thanks to Sun Microsystems, this is an open platform, allowing
implementation of J2ME to pervade into these gadgets. To ensure
that standards are maintained in such implementation, Sun has
developed a Technology Compatibility Kit (TCK) that has to be
adhered to and validated by developers. As a part of these
initiatives, Sun has also developed a new Java Device Testing
Suite (JDTS), which is a J2ME based device testing tool released
for all network operators and device manufacturers to validate the
quality of services provided to end-users.
Mobiles differ from one another by virtue of their hardware, as well
as their functionality and features. To add to the complexity, the
features of the Operating System running on these mobiles widely
differ. To standardize application development in a diversified
business like this, Sun has introduced the J2ME, which is a mobile
application written in Java and which interacts with the KVM (a
miniature version of JVM). The KVM in turn interacts with OS of the
mobile. Such a program can run on any mobile device that is Java
enabled. These programs can be downloaded on to the handset
from the network service provider.
It may sometimes happen that an end-user buys a Java enabled
mobile device, downloads an application hosted by the Network
Service Provider and finds that the application does not work. To
trace the cause of this problem, it is required to identify the actors
involved in this exercise.
1. End User:
a) The end user might not have established the specific
configuration required to download the application.
2. Network Provider:
a) Failure in network
b) The application may have been removed from the network and
not exist when the user tried to download it.
c)The appl icat ion
might not have beentested for a particular
device before being
hosted on the network.
3. Device Manufacturer:
a) The hardware/software to run the
particular application does not exist
on the device.
4. Device OS Provider:
a) The J2ME implementation for the particular device has not
been completely made, though the TCK has been
satisfied.
JDTS can be used in the scenario mentioned in point 2c, 3a and
4a, as explained below:
In the case of (2c) With a large number of applications getting
ready to get into the network, the overall time to test a particular
application across all the devices is reduced and may cause the
quality to deteriorate. The role of JDTS is vital in such a situation.
JDTS is a conglomeration of around 9000 mobile tests that have
been written to check the functioning of all aspects of a device.
This is a superset of all the J2ME applications that are being
developed in the world. Testing each device with JDTS will clearlydisplay the limitations of the device. This report can be juxtaposed
with the features of the mobile application and can indicate on how
an application would perform with a device, thereby helping
improve its quality.
In the case of (3a) When the device hardware does not support a
feature and the mobile application is trying to use it, it results in an
Application Error, eventually halting the program. Here, JDTS can
be used to get a concise list of all the unsupported hardware
features of the device. Usually the device manufacturers only list
the supported features, whereas this particular report can help
Application Developers by giving a list of devices for which theirapplication is not supported.
In the case of (4a) JDTS can detect unsuccessful J2ME
implementations on a particular device and improve their KVM so
that J2ME implementation can be completed.
Post query DA PDiscus
ionForumyour on D s
an winasurprse iftfrom D DP!d i g Aos D i
Ptyourqueryon ADPDscus
sionForum
n i s f D a dwnasurpriegiftromDA P!
Developer ForumAn Introduction to Java Device Testing SuiteAn Introduction to Java Device Testing Suite
Part - 1
Disclaimer: DADP is not responsible for the validity of
the contents of this article.
This article has been contributed by
Avinash Mangipudi, a DADP developer.
He can be contacted on
(This is the first of the two-part JDTS tool featured in the
Developer Forum. The second part will follow in next issue
of R-evolution.)
By Avinash Mangipudi
http://www.dadp.com/http://www.dadp.com/8/3/2019 R Evolution Feb05
7/8
Can you tell us something about your experience on working
with Reliance?
Working with Reliance has been a very fruitful and pleasurable
experience. The Reliance team has provided us with all thesupport that we have needed without fail. Thanks to this kind
of spontaneous cooperation, we have decided to create
further applications for Infocomm. We are in the process of
perfecting these applications and will be launching them on the
Reliance network very soon.
Which games have you developed for Reliance Infocomm?
We have deployed X-Change, Hyper Typer and Magnetron,
which are currently live on the R World platform.
How are these games unique? Any special features?
These games are unique in the sense that they are very simple
to play but are highly addictive. For example, Hyper Typer is an
edutainment game, which involves typing of words. With this
game, the user is gaining in two ways. First, by having fun
playing this game and secondly by improving typing skills on
the handset, which help to SMS, messages faster.
Which other games are you currently developing for RelianceInfocomm?
We are in the process of creating new games like Enigma,
Super Bloc Bloc, Bubbletris, Arrowbot and Ben Chase. These
games are developed from a variety of categories like Action,
Arcade, Adventure, Puzzle, etc.
Any interesting or memorable event during this associationyou would like to share with the readers?
I remember this incident when we were trying to solve some
handset related issues. We visited DAKC to seek the DADP
team's help to address these issues. The DADP team sat with
us till late in the night and ensured that the bugs were ironed
out. This is an example of high standards of commitment and
professionalism and I wish that other carriers would take a leaf
out of the DADP team's book.
What are your views on the mobile gaming / applications
business in India and on future trends in this space?
Mobile gaming has just started to evolve in India. With carriers
like Reliance, who are aggressively pushing contents to their
subscribers, and the availability of high-end handsets at low
prices, one is going to witness a sharp up trend for downloads.
User awareness on handsets and data services is also
increasing day-by-day. Customers are looking to their
handsets for something more than just voice communication.
Handsets are fast becoming entertainment / business devicesand proving to be an integral part of people's daily lives.
Developers like us are recognizing these facts and are
designing applications to take the industry forward.
Interview of the Month
www.dadp.com 7R-evolution
itish Mittersain, 24, the founder and CEO of Nazara Technologies, has been actively involved with the Indian IT industry for
the last several years. He has been a recipient of many awards, including the Young Achievers Award of the
Indo-American Society. Till recently, he was also the Co-Chairman of the National IT Committee of the IndianNMerchants Chamber.As one of India's leading mobile content developer and publisher,
Nazara works with several mobile operators, both in India and
abroad. The company develops mobile entertainment
products, including games based on well-known
brands and distributes them to millions of mobile
phone users nationally and internationally.
In an exclusive interview with
R-evolution, Nitesh talks about his
association with Reliance
Infocomm, as well as mobile
games developed by his
company:
'These games are unique, very simple
to play and highly addictive'
'These games are unique, very simple
to play and highly addictive'
Nitish MittersainNitish Mittersain
http://www.dadp.com/http://www.dadp.com/8/3/2019 R Evolution Feb05
8/8
Quiz
Monthly Poser
You can contribute ideas and information to R-evolution at the following e-mail address: [email protected].
Please note that contributions may be edited for clarity, style or length.
Editorial Team : S P Narayanan, Saurabh Chakrabarti, Siddarth Arora, Amit Chandra, Suresh Dabbara,
Nitin Saksena, Vikram Vishwanath, Lakshman S Aiyar, Vijayam Raghunathan
Design By: Jaydeep Gholap
Published by the DADP and Corporate Communications Teams, Reliance Infocomm, DAKC, Navi Mumbai
www.dadp.com 8
Answers to the Monthly Poser should be sent to [email protected] mentioning Monthly Poser - February 2005
as the subject with the senders location stated. The winner will be decided on the basis of a lucky draw and walk away with a prize from DADP.
R-evolution
Answer to last months poser: D) Mumbai
Winner of the last month's poser (through a lucky draw is): Gautam Arora
Winner will receive the prize by courier.
Feedback
1. Which of the following most closely matches the description of a Java Map?
A) A vector of arrays for a 2D geographicrepresentation.
B) A class for containing unique arrayelements.
C) A class for containing uniquevector elements.
D) An interface that ensures that implementingclasses cannot contain duplicate keys.
2. How does the set collection deal with duplicate elements?
A) An exception is thrown if you attempt toadd an element with a duplicate value.
B) The add method returns false if youattempt to add an element with aduplicate value.
C) A set may contain elements thatreturn duplicate values from a call tothe equals method.
D) Duplicate values will cause an errorat compile time.
3. Which of the following statements about threading is true?
A) You can obtain a mutually exclusivelock on any object.
B) A thread can obtain a mutuallyexclusive lock on an object by callinga synchronized method on that object.
C) Thread scheduling algorithms areplatform dependent.
D) All of the above.
4. Why might you define a method as native?
A) To get to access hardware that Javadoes not know about.
B) To write optimized code forperformance in a language such asC/C++
C) To overcome the limitation of the privatescope of a method.
D) 1 and 2.
5. Reliance Infocomm announced a tie-up with which of the following SMS
services in January 2005?
A) 7333 (Rediff)
B) 7827 (Star)
C) 8888 (Indiatimes)
D) All of the above
Which software
company
was instrumental
in creating
the first-ever application for
the blind?
a) ZMQ
b) Tinfo Mobile
c) Dhruva Interactive
d) Daffodil Software
in
association with DADP
Call Minder -
Dear DADP team,
Yours Truly
We should have a Weather Update and Disaster Warning
System which will serve as a useful guide in times of
emergency. No doubt it is a huge task for even after so much
scientiffic efforts it is difficult to predict nature's moods.
Nevertheless, a simple RIM handset backed by its largenetwork would certainly come handy at critical junctures and
save many precious lives.
Pankaj Jha
Sir,
I am a regular reader of the R-evolution.
The support provided to the Developer Community
through the DADP program is very beneficial to
students.
Thanks,
Gautam Arora
Answers:1.D)2.B)3.D)4.D)5.C)
http://www.dadp.com/http://www.dadp.com/