Development Of Android Applications

3y ago
19 Views
2 Downloads
3.86 MB
125 Pages
Last View : 2m ago
Last Download : 3m ago
Upload by : Maleah Dent
Transcription

Development of Android ApplicationsAn Interactive Qualifying Project ReportSubmitted to the Faculty ofWorcester Polytechnic InstituteIn partial fulfillment of the requirements for theDegree of Bachelor of ScienceSubmitted on December 16, 2013Written byEdison JimenezKyle DavidsonAngelia GiannoneTyler MorrowApproved byProfessor Vance Wilson

AbstractThe goal of this project was to design small and robust Android applications that can beused by Worcester Polytechnic Institute to teach the concepts of Android programming. Theseapplications and their corresponding instructional guides will focus on teaching the programmingof screen navigation, decision logic, database interaction, and user interface controls.Table of ContentsAbstract. 2Chapter 1 - Introduction . 7About this Guide . 7Formatting and Terminology Notes. 7Chapter 2 - The Initial Development Process and Reasoning . 8Week 1 . 8Week 2 . 8Week 3 .12Weeks 4 – 7: Developing the QuizMe Application .12Weeks 4 – 7: Developing the HomeworkHelper Application .15Alpha-Testing .18Beta-Testing .19Reflections .19Application Comparisons .19Chapter 3 - Stub App .21Overview .21Setting Up Your Workspace .21A Brief Overview of Eclipse .24Setting up the Android Emulator .24Testing on an Android Device .26Running the Stub App .27Chapter 4 - QuizMe (Instructional) .314.1: Project Setup .314.2: Building the Application: Overview .374.3: Splash Screen .38Overview .38Development .382

4.4: List of Quizzes .43Overview .43Development .454.5: Creating a Quiz.51Overview .51Development .514.6: Quiz Options .53Overview .53Development .534.7: A List of Questions .57Overview .57Development .584.8: True or False Questions .59Overview .59Development .594.9: Running a Quiz .61Overview .61Development .624.10: Multiple Choice and Fill-in-the-Blank Questions .71Overview .71Development: Fill-in-the-Blank .73Development: Multiple Choice.734.11: Minor Improvements and Cleanup .74Color Feedback.74Toast Popups.75Code Cleanup .76Chapter 5 - HomeworkHelper (Instructional) .795.1: Environment Setup .795.2: Building the Application: Overview .795.3: Splash Screen .80Overview .80Development .805.4: Event Activity .853

Overview .85Development .855.5: Settings Activity .109Overview .109Development .1105.6: Notifications and Calendar Support .118Overview .118Development .1185.7: Additional Functionality .123Conclusion .124Works Cited .1254

List of FiguresFigure 2.1: Initial mockups made in Photoshop prior to development . 9Figure 2.2: Initial flowchart design for the QuizMe application .10Figure 2.3: Initial flowchart design for the HomeworkHelper application .11Figure 2.4: Feature comparisons across the applications: .20Figure 3.1: The Eclipse Import menu .22Figure 3.2: Import options .23Figure 3.3: Creating a Virtual Device .25Figure 3.4: The Android Virtual Device Manager in the ADT .26Figure 3.5: The Stub App .27Figure 4.1: Refactoring.31Figure 4.2: Renaming.31Figure 4.3: Renaming Packages .32Figure 4.4: Importing Code.32Figure 4.5: The File System Import dialog .33Figure 4.6: Import the provided code into your project.34Figure 4.7: Deleting a folder from the project. .35Figure 4.8: Import image folders .36Figure 4.9: Editing the Android Manifest .37Figure 4.10: The QuizMe Splash Screen.38Figure 4.12: The Import option in the error solutions menu .42Figure 4.13: LogCat may be located the side or bottom of Eclipse .43Figure 4.14: QuizListActivity with a single quiz and an options menu .43Figure 4.15: Creating QuizListActivity .45Figure 4.16: AddQuizActivity .51Figure 4.17: QuizOptionsActivity .53Figure 4.18: QuestionListActivity .57Figure 4.19: AddQuestionTrueFalseActivity .59Figure 4.20: RunQuizActivity .62Figure 4.21: Class creation settings for fragments .64Figure 4.22: Superclass selection .64Figure 4.23: Manual layout XML file creation .65Figure 4.24: Activities handling multiple choice Questions .72Figure 4.25: Activities handling Fill-in-the-Blank Questions .73Figure 4.26: Colored answer feedback .75Figure 4.27: A Toast popup on QuizOptionsActivity .76Figure 4.28: Exporting QuizMe as a .zip archive file .77Figure 5.1: The HomeworkHelper app .79Figure 5.2: The Eclipse project manager .80Figure 5.3: Create Activity .81Figure 5.4: Creating a blank Activity .81Figure 5.5: Name the Activity .82Figure 5.6: Locating AndroidManifest.xml .84Figure 5.7: EventActivity .885

Figure 5.8: Menu Location .89Figure 5.9: Creating the main.xml file .90Figure 5.10: Menu Items .91Figure 5.11: DatePicker and TimePicker Fragments .96Figure 5.12: ListView of reminders .98Figure 5.13: Editing the Event Activity .100Figure 5.14: Visual representation of SQL table for HomeworkHelper .101Figure 5.15: How EventActivity retrieves data from SQL table .102Figure 5.16: HomeworkHelper Bugs .105Figure 5.17: Example of input validation using setError() .107Figure 5.18: Creating the Settings Activity.110Figure 5.19: XML folder.111Figure 5.20: Creating the preferences.xml file .112Figure 5.21: Settings Activity Layout .115Figure 5.22: Notification from HomeworkHelper .1226

Chapter 1 - IntroductionMobile applications are becoming increasingly prevalent today, particularly in the worldof business. As such, many prospective business students are interested in creating mobileapplications but lack the knowledge to do so. The goal of this project was to develop twoAndroid applications and tutorials for novice programmers to build these applications for a futurecourse at WPI. These two applications introduce many necessary concepts of Androidapplication development and should be challenging but feasible for novice programmers tobuild. Students will learn basic programming principles along with the necessary skills todevelop an Android application.About this GuideThis guide serves as a tutorial for novice programmers to learn the basics of Androidapplication development. It is highly recommended that students supplement the knowledgeprovided with their own research, particularly from the official Android Developersdocumentation.Chapter 1 covers the IQP team’s process in developing these applications and thistutorial. This includes weekly goals and accomplishments, evolution of the applications overtime, why some concepts were included and others were scrapped, and the team’s generalthought process as the semester went on. Chapter 2 shows the final results of development in achart format. Various skills were deemed necessary for this project, and the chart shows whichapplications help to build which skills in the students.Chapters 3, 4, and 5 serve as instructional tutorials for developing the applicationscreated by the team. Chapter 3, which works with the provided Stub App, helps students to setup their development environments and understand the basics of Eclipse and the differentpieces that form an Android application. Chapters 4 and 5 walk the students through creatingthe QuizMe and HomeworkHelper applications.Formatting and Terminology Notes An Android Activity is a single screen of an application, such as a main screen or thesettings menu.Inflating an Activity means to load it into the current view of the application, bringing it’sformatting and methods with itBold Text in this guide is used primarily for programming controls, as well as for emphasisin some sections“Quoted Text” is literal text, typically used when asking students to input a single line of codeor a particular file name or setting exactly as written.Italics are used to denote file names and directoriesCode is shown in Courier New fontBold code is code for students to add into their programs. This is not treated as literal text(“quotes”) as it is typically formatted in writing as if it were seen in an IDEStruck Through code represents code that is curre

applications but lack the knowledge to do so. The goal of this project was to develop two Android applications and tutorials for novice programmers to build these applications for a future course at WPI. These two applications introduce many necessary concepts of Android

Related Documents:

Android Studio IDE Android SDK tool Latest Android API Platform - Android 6.0 (Marshmallow) Latest Android API emulator system image - Android 6.0 Android Studio is multi-platform Windows, MAC, Linux Advanced GUI preview panel See what your app looks like in different devices Development environment Android Studio 9

Android Development Tools ADT A plug-in for Eclipse (see Eclipse) to develop Android applications. Android Operating system for smartphones. Android Market The Android distribution service of mobile applications. Android Lifecycle A model Android uses to handle the lifecycle of an activity in applications.

An Android Studio SQLite Database Tutorial Previous Table of Contents Next An Android Studio TableLayout and TableRow Tutorial Understanding Android Content Providers in Android Studio eBookFrenzy.com Purchase the fully updated Android 6 Edition of this Android Studio Development Essentials publication in eBook ( 9.99) or Print ( 38.99) format

The best way to develop applications for Android is using the Eclipse IDE and the Android plug-in for Eclipse called Android Development Tools (ADT). You can test your applications by running them on an Android Virtual Device (AVD), an Android emulator. To setup your environment, follow each of the steps below in order.

Android Development Tools (ADT): A plugin for eclipse that extends the Eclipse IDE by providing more tools to develop Android Applications. Java SE Development Kit (JDK): A popular Java SDK that is used to program Android applications. Android Virtual Device (AVD ): An Android emulator that allows you to

ADT (Android Development Tool) bundle or ! Eclipse ADT plug-in Android SDK or ! Android studio ! Download earlier SDK versions using SDK manager if needed . Android Virtual Device (AVD) ! Android emulator allows . Android App Essentials ! Layout ! View objects: UI widgets such as buttons, text box etc. .

Navigate to https://developer.android.com/studio/index.html and download Android Studio for your appropriate OS. The Android SDK should be included with Android Studio. Make sure you do not choose an Android Studio installation that excludes the Android SDK. Standard download option for Windows OS (above). Alternative

running applications easier. ADT (Android Development Tools) – A plugin for eclipse that extends the Eclipse IDE by providing more tools to develop Android Applications AVD (Android Virtual Device) – An Android emulator that allows you to simulate how the application will run on an actual Android device.