Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 5

Running Head: REVIEW OF MOBILE APPLICATION DEVELOPMENT 1

Review of Mobile Application Development

David McClane Jr.

Western Governor’s University


REVIEW OF MOBILE APPLICATION DEVELOPMENT 2

Abstract
This paper is a reflection on the application that I created for the course Mobile Application
Development. I will detail what mobile application developing is by explaining through the
context of the architecture and noting both the hardware and software capabilities and
limitations. I will describe the challenges that I faced while developing this application. I will
detail how I overcame the hurdles and issues that arose as I was working on this project. I will
express what I would do differently if I were tasked with doing this project again. I will review
how emulators are used and will outline the pros and the cons of using an emulator and not using
one during development.
REVIEW OF MOBILE APPLICATION DEVELOPMENT 3

Review of Mobile Application Development


Mobile application development has many aspects that must be met in order to make an
application run on a mobile device whether that is a phone, tablet or a wearable device. The
architecture for each is vastly different based on what they have both component wise and
software wise. Age also has a great deal to do with what is supported and not. Hardware
capabilities make a device portable above what a normal computer or laptop can do. While it
does become much more portable it loses out on other things these limitations are things like
battery capacity, processor size, and screen size. These limitations are what make the software
side shine through with its capabilities. The mobile operating system is uniquely designed with
the hardware limitations in mind. This means that the software has some limitations as well it for
the most part can not be as robust as a program that can run on a desktop or laptop computer.
When creating the application that I was tasked with I used the 29th sdk version of the android
operating system known as Android 10; with a minimum version being the 26th sdk version
which is Oreo (Source, 2020). The application should be compatible with about 60.8% of
devices being used today (Android Studio, 2020).
Throughout the development process I had many trials and challenges come up. Some of
the problems were of my own making. The rest were of not having the right information mostly.
The issues that I created for myself were that I did not plan properly and what I did plan usually
ended up having to find a way to make it work as I could not find the information on how to do
something within the tutorials, I was pointed at nor at the web blasts that I discovered hiding in
some of the course announcements. I began searching in the other places pointed at by the course
notes and such, but it did not contain what I wanted to use. After trying to search Google many
times with not much luck I let it sit for a while and tried to do something else in the project.
When I found web blasts and tutorials, I found out that some of them were outdated. They used
depreciated code and I could not locate the more up to date videos. For example, when I watched
the video provided as a tutorial of application architecture it led me to a video series by David
Gassner. When he made the video and built his code two and a half years ago when he used the
ViewModelProvider to initialize is ViewModel it gave me errors when I tried to follow his code
(Gassner, 2018). After doing some research I found that the way he did it then was now
depreciated and no longer a valid way to do it. So, I began to search for the correct way to get it
done.
Overcoming the challenges was difficult at times. The easy part was overcoming the
tutorials and web blasts that were outdated. After my mentor repointed me to the web blasts, I
began to watch all the web blasts instead of just the ones I thought I needed for the part I was
having problems with. Doing that I ended up finding one of the web blasts that was exactly what
I had been searching for. It was an update video that I had overlooked because of the title that it
had. This update showed me how to properly initialize the ViewModel and get my app back on
track (Western Govenors University , 2020). Now the tricky part was to figure out how to use all
the features that I wanted my application to have. I searched in many places and began to piece
together my application like a quilt. I found how to use the text view to open a date picker so a
REVIEW OF MOBILE APPLICATION DEVELOPMENT 4

user could pick their date from a calendar and I could save on some room (Android_coder,
2013). I also wanted a way to use the radio buttons to select which type of assessment that was
being chosen for the assessment when creating or editing one (mkyong, 2012). There was some
other functionality that I wanted to use but due to not ever being able to find out how to
incorporate it I decided not to use it and found a different way to get the job done.
If I were tasked with doing this project again there are several things that I would do
differently. To start I would begin by watching all the blast seminars throughout not just trying to
pick out the ones I thought I would need. Next, I would read and reread over not just the
instructions but the rubric before I begin and make a note of each part that needs to be done to
get it all done the right way the first time. I would then begin to plan out what I wanted each
page to look like and then figure out what I wanted to be for each activity, button, and menu
item. Then I plan the menu items, the different icons and the other resources that I would need.
Afterwards I would try to plan out different common tasks that I could write a method for and
just call the method instead of just writing all the code over and over.
While I coded, I would watch for anytime that I started using a view to make sure to
initialize the view before I forgot and cause an error. I would use a constants class that way I
would not have to keep up with the various constants that I was using. I would also stay with one
style of formatting when naming things.
Emulators are a great innovation that has made developing for a multitude of customers
easy. They are used by having the computer make a substitute device that can be used for testing.
This is handy because a single developer can now test for many devices without having to
possess any of them. However, a developer must have a computer that can support the emulator,
or it may be slower than it should be or may not work at all. Therefore, having a development
device is also quite useful. It can be used to try out in real time on a real device. The main
downside to it is that it may work on that device, but what about a bigger, smaller, older, or
newer device. Things may look off or they may not work on those. Using a combination of an
emulator and a development device is really the best option.
REVIEW OF MOBILE APPLICATION DEVELOPMENT 5

References
Android Studio. (2020, 11 24). Android Platform Version.

Android_coder. (2013, 2 18). stackoverflow.com. Retrieved from Datepicker: How to popup datepicker
when click on edittext: https://stackoverflow.com/questions/14933330/datepicker-how-to-
popup-datepicker-when-click-on-edittext

Gassner, D. (2018, 5 16). linkedin.com. Retrieved from Building an Android App with Architecture
Componets: https://www.linkedin.com/learning/building-an-android-app-with-architecture-
components/create-a-viewmodel-for-the-list-activity?u=2045532

mkyong. (2012, 8 29). mkyong.com. Retrieved from Android radio buttons example:
https://mkyong.com/android/android-radio-buttons-example/

Source. (2020, 11 24). source.android.com. Retrieved from Codenames, Tags, and Build Numbers:
https://source.android.com/setup/start/build-numbers

Western Govenors University . (2020, 11 24). Retrieved from C196 Webinar Blast Recordings:
https://srm--c.na127.visual.force.com/apex/CourseArticle?id=kA03x000000yIKOCA2

You might also like