ISSN 2278 – 1447
Volume – 5, Issue-1, International Journal of Mathematical Sciences and Engineering (IJMSE), March 2016
Overview on Mobile Application Learning Management System B.Venkatesan1, M.Abubackkar Shithik2 1
Assistant Professor, 2UG Student, Department of Information Technology,
Paavai Engineering College, Namakkal. E-mail:
[email protected]
Abstract:
Application
sphere of life. Whether it is entertainment or
Development is the development of mobile based
Cross
education, we can see a very intense use of mobiles
applications so that the development of these types of
and we can consider them as a new personal
applications can be made platform-independent. A
computer. It doesn’t mean that desktop computers are
review has
Platform
Mobile
been made in this field while considering
now useless, but the mobile devices market is
Integrated Development Environment is being proposed
growing fast. They are cheap, convenient because of
which will help a software developer to code an application in a single code base and deploy that single
their portability, and due to geo location often more
code base to multiple operating systems meaning if a
useful than PC. Desktop applications are now
developer codes in Java for Android, the developer can
commonly communication based and application
deploy the same Java code to Ios subsystem. First the
developers develop a single application in cross-
development of a operating system compatibility
platform that can easily run on
architecture which helped to run unmodified iOS
platforms e.g. Mac or Windows. There is an
binaries on Android operating system and second phase
different desktop
increasing demand of mobile applications to use
of proposed solution helped to understands the cross-
mobile devices, but an application development for
platform application development tools which are
mobile devices is not so simple and it’s a big
currently available in the market. The third step is to understand such cross-platform development tools in
challenge. These mobiles have different operating
more detail and finally a mathematical model based
system and unlike PC OS, mobile OS decides the
application.
type
Keywords: Development,
Cross-Platform IDE,
Android
Mobile
Application
Development,
of
programming
language
required
for
applications running on it. So we need to design the
iOS
mobile application according to its platform.
Development, Cross-Platform.
There are various categories of app development 1. INTRODUCTION
for mobiles broadly categorized into three, namely,
In the present era of proliferating computer
native apps, mobile web apps and hybrid apps and
networks, and electronic devices (mobiles, tablets,
according to the app categories and platforms, we
PCs) every individual and organization is trying to
have different choices in programming languages and
get access to information and use these devices for
framework for mobile application development. For
their advancement and improved performance.
running an application on multiple platforms, a cross-
Electronic information is accessible to a huge
platform framework is required. Cross-platform
population in the world. Mobiles have become so
frameworks for PC app are not adaptable to mobile
much common that we have started to use it in every
app, so vendors provide cross-platform framework 111
ISSN 2278 – 1447
Volume – 5, Issue-1, International Journal of Mathematical Sciences and Engineering (IJMSE), March 2016
for mobile apps (some of them are discussed in
C. Blackberry
section V). With this advancement of technology
Blackberry smartphone platform support web
maybe third party cross-platform emerges that
development with HTML, CSS and javascript, java
supports both PC app and mobile app irrespective of
application development using MIDP, CLDC and
platform. In our studies, we explore cross-platform
RIM proprietary APIs. 32 bit windows OS support
strategies that would be helpful for providing solution
development of Blackberry app in Java.
to barriers in an app developed for mobile learning systems in a heterogeneous device environment. The
D. Windows Mobile
mobile learning is defined as “Any sort of learning
It provides more desktop like user experience. In
that happens when the learner is not at a fixed,
addition to C++ and C#, Silverlight and XNA are
predetermined location, or learning that happens
used for application and game development.
when the learner takes advantage of the learning
windows mobile development visual studio. Net
opportunities offered by mobile technologies”
framework, windows mobile SDK and developer
For
toolkit are required. Symbian OS is used by Nokia, Sony Ericsson, Siemens and Samsung. Language
II.MOBILE PLATFORMS: There are different operating systems that are used
supported by Symbian OS is python makes use of
in the mobile market: Symbian, Blackberry, iOS,
Symbian C++ APIs. Python can also run on Mac,
Andriod,
Windows and Linux.
Windows
phone
and
Plam’swebOS.
Application development in a few of them discussed in detail
III.CATEGORIES OF MOBILE APPLICATIONS Irrespective of the type of mobile platform there
A.IoS To develop for iPhone, iPod, Intel based Mac
are three main categories of mobile apps as in which
computer running OS X or later is required. iPhone
normally we designed the applications. Depending
SDK provided by Apple includes Xcode IDE, iPhone
upon the application requirement, we decide the
simulator and a suite of additional tools for app
category suitable to our requirements. First of all, let
developement. App Store provides user facility to
us discuss about all of them briefly.
search and download app developed by iOS SDK. A. Native apps These applications are specific to the mobile
B. Android It is released by apache license and built on linux.
operating system environment, take full advantage of
Android app can be built using windows, Mac, or
its particular features and can be developed with the
linux and java is primary language of Android. Java
cross platform approach with a single code base for
classes recompiled in Dalvik byte code and run on
all devices . Native apps get a performance gain by
Dalvik virtual machine. Android does not support
using the generated native code.
J2ME, and its most commonly used editor is Eclipse.
maintained for each OS this leads to an increment in
Developers may create native libraries in C or C++.
the development team, costs, and time and challenge
The Google play store is the official site and portal
for developers are the new ones that continually
for Android app.
appear in market. Native apps works without the
As one project
connectivity of the internet. If you are working in an 112
ISSN 2278 – 1447
Volume – 5, Issue-1, International Journal of Mathematical Sciences and Engineering (IJMSE), March 2016
environment where there is no connectivity, native
some shortcomings also. Internet connection is a
app is the way to go. Since native apps work with the
must in web apps. Web apps are not compatible with
device’s built-in features, they are easier to work with
smartphone features like camera, GPs, phone dialing,
and also perform faster on the device. Application
etc. Web apps are not even listed in play store. Users
build in this category are platform dependent. So
have to search it on the web to use. Performance of
whatever language you will use, you will have the
web apps is slower as compared to native apps. They
full access to IDEs which provide better tools to
are also more difficult to build a regular user-base,
develop and debug the project faster. Examples of
unless they save it as a bookmark. Users won’t have
native apps are Angry Birds, Shazam1. With all these
the app’s icon on their devices as it is a web link
benefits
few
which can be open as required. As a developer or
disadvantages also. Maintenance of the Native app is
publisher you can’t send them notifications to bring
complicated task both for the users and developers.
them back to your content.
of
native
apps,
they
have
a
Developers have to program it according to different platforms and users have to update it regularly. The
C. Hybrid apps
development cost of this app is more if you are making
application
for
different
Hybrid apps combine technologies from native and
platforms.
mobile Web apps to gain the benefits of each. They
Sometimes it becomes very difficult for the developer
behave like a native app because they are installed
to give maintain and offer support as users of
from a web store and have access to device specific
different mobile may be using different versions of
features as in native app but developed using web app
the apps.
tools [3]. The tools for hybrid app can modify prepackaged HTML pages, can change user interface according to device platform and allow both offline
B. Web Apps Web apps work with the devices that have
and online usage [2]. Hybrid mobile apps can be
browser therefore they can work on desktop
released on multiple platforms when using certain
computers as well on mobiles. In responsive web
web technologies like HTML5, CSS3 and JavaScript.
application, design decided by the server and applied
It will
at client level renders according to device features .
prepare softwares for each platform. The Netflix app
Whereas mobile web app that provides better
is one example of a hybrid app which runs the same
usability as compare to responsive web, its content,
code base on all platforms. Facebook, TuneIn Radio,
provided merely for mobile devices consequently
LinkedIn are some of the examples of hybrid apps.
there is a need to maintain different sites for each
There are a few disadvantages of using hybrid app
device [3]. Users need not to go to mobile app store
development. Hybrid apps are not executed natively;
to update or download the application. Whenever the
the HTML5 and JavaScript portion of the app is
users will log in, they will get the updated version.
rendered and executed by the platform’s Web engine,
Developers also need not to bother about the mobile
which adds another layer between the user and the
platform. There will be the single universal version
app. This can make the execution of the application
which can be used by any mobile platform. Hence,
slower. This is a new technique as compared to other
the maintenance cost of the web app is low. Example
two, so there are less tools available for the
of
development of hybrid apps. Sometime, performance
Safari
and
Chrome
web apps
giben
in
mobiloudwebsite. On the other hand, web app has
save the overhead time and cost used to
issues for certain types of apps are there in hybrid 113
ISSN 2278 – 1447
Volume – 5, Issue-1, International Journal of Mathematical Sciences and Engineering (IJMSE), March 2016
apps like on complex native functionality or heavy
libraries that will help programmers to develop best
transitions, such as 3D games.
Android applications. Moreover, Java can be used to program native apps, mobile web apps and hybrid apps.
IV. APPLICATION DEVELOPMENT
It
is an
object
oriented
programming
environment that is used for platform independent
LANGUAGES Choosing the right development tool is very
application. The application running on battery
crucial and important decision. A new technology's
driven devices built by J2ME java family, it provides
successful adoption often depends on its development
networking support and has API JSRO82 for
tools. Good tools help new developers more easily
Bluetooth technology . Java with Eclipse IDE
get started and make experienced developers more
provided app running on Android and support web
productive. For instance, the success of Microsoft's
view. For blackberry app both J2ME and Eclipse IDE
programming environment is closely associated with
are suitable. Java CLDC Emulation required for
the success of its Visual Studio tools. This topic
windows phone and J2ME for Symbian.
summarizes the major app development languages available for different platform that we discussed in
C. JavaScript
section II with their relevance to cross platform
JavaScript supported by all platforms, Android and
mobile apps.
iPhone have full featured browser while the browser on Blackberry support JavaScript 1.0, 1.1, 1.2, and 1.3. Therefore HTML and CSS code based on
A.Objective-C Objective-C with Xcode IDE, primary programing
platform specific
browser features of one device
language offered by Apple only for iOS [4] provides
cannot be used on another device with different
object oriented capabilities, requires dynamic runtime
browser features.
and runs merely on MAC operating system2. It is used to build native apps that run directly on iOS
D. HTML 5
Xcode suits include interface builder and instrument.
It is considered by many developers and
In the MVC design pattern for iPhone application
companies as a standard for web development and
development Objective-C class
required for view
even hybrid can be used with HTML 5 framework .
controller and web view can also be included in
Due to HTML 5 difference in native and hybrid has
native iPhone application.
reduced significantly, moreover an app in HTML and JavaScript deployed on local system can provide a similar structure as native apps. It provides
B. Java Java7 is a very popular programming language
information regarding error handling and also support
when it comes to mobile application programming.
offline storage, network connectivity, multimedia,
Many developers are using this language as it easy to
sockets and threads, drawing animation and advanced
use and many online tutorials are available to get the
form controls. A very prominent feature of HTML 5
help while development process. One of the popular
is client side storage and up to 5 MB data can be
development tools of Java is Android SDK.
It
stored by the user of the web application. iPhone and
includes many standard Java libraries like data
Android support web application developed using
structure libraries, math libraries, graphics libraries,
HTML 5.
networking libraries as well as special Android 114
ISSN 2278 – 1447
Volume – 5, Issue-1, International Journal of Mathematical Sciences and Engineering (IJMSE), March 2016
with the web services through JSON, REST new type
E. C# It is used for Microsoft mobile and a web or
of applications and services can be created. Bluetooth
desktop application implemented in Java can be
protocol use for Bluetooth connectivity between
translated to C# for windows mobile platform. It
devices and gsm_ module for location awareness.
targets the .Net CLI and take advantage of .Net
The native development languages of different
framework. In C# developer can take advantage of
smartphone operating system are mentioned in .
web libraries, database connectivity, and socket
Table 1 summerizes mobile platform support for the
programming . F. PHP In mobile web apps server
set of app development languages with IDE
side applications can be built using PHP, Node.js and
according to what it is stated in section II and IV. To
ASP.Net. PHP IDE provides a framework to create
conclude this discussion we have come up with that
robust mobile PHP applications4. With PHP we can
there are various languages used for cross-platform
access the user agent string for detecting device,
application development. According to report of
attain information about browser, check device
developereconomics-q3-2014 research only 15% of
capabilities and image rendering with PHP WURFL
mobile developers are targeting browser while 42 %
API. Open source PHP is required for Android.
are using HTML, CSS, and Java Script. Whereas Java, C / C++, Objective C and C# are also very popular among developers. According to statistics
G. C\C++ Microsoft windows phone C++ use within XAML
mentioned in that research we provide the percentage
app and in games. Windows phone runtime native
of
primary
languages
API are built in C++ and can be projected in C# or
development in fig .1
share
in
mobile
app
VB.Net . Android native libraries written in C\C++ [16]. Symbian C++ provides full access to device
V.CONCLUSION
features and improved speed, that is an edge for In this paper, we discussed cross-platform mobile
Symbian C++ over python and java and eclipse based
learning development. Through the comparison and
carbide C++ is preferred IDE for Symbian and Nokia.
contrast we have proposed that adopting a hybrid app
Open C provides cross-platform development, a set
technique is most suitable for such mobile app
of middleware libraries for the smartphone platform
developers. From this study, we have learned that
and TCP /IP socket programming.
there are several frameworks that are feasible for hybrid crossplatform mobile app with each of them.
H. Python
In order to avoid re-implementation of the same
Python with a rich and standard library of modules
applications for different platform separately. Studies
is defined. It provides a scripting solution using
also show that there are many existing learning
Symbian C++API. Used for Symbian particularly
systems that are not being explored fully and will
Nokia’s platform. It can run on Windows, MAC OS,
probably have a bright future if some more
Linux and Symbian OS. It supports a rich set of
functionality
smartphone features such as sending and receiving
is
considered
and
proper
implementation is carried out. Therefore, in our
SMS / MMS, camera, bluetoooth, network access,
future work we will still continue the studying of the
sound recording and playing, text to speech and 2D /
latest cross-platform framework, device features
3D graphics. It supports different dialogs e.g. pop-up
accessible by these frameworks, and implement a
notes, query, pop-up menu, select list. By combining 115
ISSN 2278 – 1447
Volume – 5, Issue-1, International Journal of Mathematical Sciences and Engineering (IJMSE), March 2016
[4] N. M. Hui, L. B.. Chienget, W. Y. Ting, H. H. Mohamed, and
Learning system incorporating new features. Hence,
M. Rafie, “Cross-Platform Mobile Applications for Android
this study is important for a cross-platform mobile
and iOS”, IFIP WMNC, IEEE 2013.
learning application development.
[5] P. Gokhale, and S. Singh, “Multi-platform Strategies, Approaches
and
Challenges
for
developing
Mobile
applications”, CSCITA 2014.
REFERENCES
[6] D. H. Setiabudi, L. J. Tjahyana, and Winsen, “Mobile Learning Application Based On Hybrid Mobile Application Technology
[1] D. V. Sanchez, E. H. Rubio, E. F. Ruiz, and A. M. Viveros,
Running On Android Smartphone and Blackberry”.
“Student Role Functionalities Towards Learning Management
[7] B. A. Babatunde, L. Chia-Feng, and Y. Shyan-Ming, “A Cross-
Systems As Open Platforms Through Mobile Devices”, IEEE
Platform
2014.
Mobile
Learning
System
Using
QT
SDK
Framework”, Fifth International Conference on Genetic and
[2] I.Dalmasso, S. K. Datta, C. Bonnet, and N. Nikaein, “Survey,
Evolutionary Computing 2011.
Comparison and Evaluation of Cross Platform Mobile
[8] J. F. Lu, and Y. Zhang, “Mobile Application Development
Application Development Tools”.
Based on Adobe AIR”, IEEE 2013.
[3] N. Serrano, J. Hernantes, and G. Gallardo, “Mobile Web Apps”, IEEE Software 2013.
116