1. 3701ICT Mobile Application Development
Answers:
What Is Cross Platform App Development
The construction of software applications that are compatible with several mobile operating
systems is known as cross-platform mobile development. Initially, the difficulties of
designing a backend that worked across various platforms added to the complexity of
producing mobile apps (Heitkötter et al., 2013). It was typically easier to design native
applications for each mobile Operating System despite the fact that it was time-consuming
and costly (OS). The issue was that code written for one operating system could not be used
in another.
The platforms that can be used for developing cross platform mobile applications include:
Xamarin
One of the alternatives is Xamarin, which is designed for cross-platform mobile app
development, allowing you to create native Android, iOS, and Windows apps from a single
codebase. C# is the only programming language that may be used on this specific platform.
Xamarin apps are almost identical to native Platform apps in terms of performance.
React Native
React Native is an innovative technology that allows web developers to use their existing
JavaScript skills to create strong mobile applications. It allows for speedier mobile
development and more efficient code sharing between iOS, Android, and the Web without
compromising the end user's experience or the quality of the app. The downside is that it's
brand new and still in development.
Flutter
Flutter is a Google-developed open-source technology that allows developers to create
mobile, web, and desktop apps with a single codebase that can be utilized across different
platforms (Beginning Flutter, 2013).
2. Ionic
Ionic is an open-source SDK for creating hybrid mobile apps. It uses HTML5 and CSS to
wrap the AngularJS framework and Cordova to access native device functionality. The major
benefit of utilizing Ionic is that it allows you to create hybrid apps with stunning UI that
behave like native apps and share a single codebase.
Quiz App
Quiz app has been developed using flutter, which is a cross platform development tool. The
ap has three screens which are:
Welcome Screen
The welcome screen is a simple screen with a text and two buttons for start quiz and quit
app
Figure 1 Welcome Screen
Question Screen
The question screen has all the questions one after the other. The next question appears
after a user has answered a question.
Correct question is displayed if the user fails the question.
Figure 2 Questions Screen
Score Screen
Score screen is also a simple screen that has the score after a user answers all the questions
Figure 3 Score Page
Reflection
In contrast to cross-platform app development, native app development is programming an
3. app for a specific operating system, which means it will only run on one device. However,
cross-platform app development allows the software to function on a variety of devices.
Reasons For Cross Platform Preference
Reusability of code
Developers may work on a single code base that can operate on multiple platforms thanks
to the cross-platform development framework.
Time-to-market and application development are both accelerated.
When customers contact with a company, they want to be able to find their products and
services across all channels and have a consistent user experience.
Challenges Faced When Developing The Quiz App
Support for platform-specific APIs is limited
The platform-specific APIs are one of Flutter's flaws. Because each platform has its own
hardware and on-device functionality, each platform has its own style of implementing and
handling things.
References
Heitkötter, H., Hanschke, S., & Majchrzak, T. A. (2013). Evaluating Cross-Platform
Development Approaches for Mobile Applications. Lecture Notes in Business Information
Processing, 120–138. https://doi.org/10.1007/978-3-642-36608-6_8
Beginning Flutter. (2013). Google Books.
https://books.google.co.ke/books?hl=en&lr=&id=ex-
tDwAAQBAJ&oi=fnd&pg=PR21&dq=flutter+development&ots=YVMvd2dcFc&sig=JpLQcXDr
Dd8Sp0dDI_9sSWCdy70&redir_esc=y#v=onepage&q=flutter%20development&f=false