0% found this document useful (0 votes)
23 views12 pages

Ann 2 Mad

The document describes a quiz application project developed by students. It provides details on the rationale, aims, methodology, and code snippets of the quiz app. The app aims to learn Android development concepts and provide an interactive educational experience for users.

Uploaded by

yoruichisan10
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
23 views12 pages

Ann 2 Mad

The document describes a quiz application project developed by students. It provides details on the rationale, aims, methodology, and code snippets of the quiz app. The app aims to learn Android development concepts and provide an interactive educational experience for users.

Uploaded by

yoruichisan10
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 12

ANNEXURE II

THIRD YEAR
COMPUTER ENGINEERING

MOBILE APPLICATION DEVELOPMENT


(Course code:- 22617)

MICRO PROJECT

TOPIC:
QUIZZ APP

UNDER THE GUIDANCE OF:


Mrs. Sowmya Swamy

Submitted by

Name Roll No.


Gayatri Bhurguda 60
Minakshi Lone 58
1. RATIONALE:

Android application development is one of the rising and


growing trend in the industry of mobile. This course examines
the principles of mobile application design and covers the
necessary concepts which are required to understand mobile
based applications and develop Android based Applications in
particular. After completing this course students will design
and build a variety of real-time Apps using Android.

2. AIMS AND BENEFITS OF MICROPROJECT :

 Learning Experience: Developing a quiz app provides an


opportunity to learn various aspects of Android app
development, including UI design, user interaction, data
management, and more.

 Understanding Android Components: By building a quiz app,


you can gain a deeper understanding of essential Android
components such as Activities, Layouts, Intents, and Views.

 Practical Application of Concepts: It allows you to apply


theoretical knowledge acquired from learning resources into
practical implementation, reinforcing your understanding of
programming concepts.

 User Engagement: Quiz apps have high user engagement due


to their interactive nature, providing users with an enjoyable
and educational experience.

3. COURSE OUTCOMES ADRESSED (COs) :

 Develop rich user interfaces by using layouts and controls.


 Use user interface components for android application
development.
4. LITERATURE REVIEW:

 www.w3schools.com
 www.tutorialspoint.com
 www.youtube.com
 Class notes.

5. METHODOLOGY FOLLOWED:

• Defined Project Scope: Clearly outlined the


objectives and features of the quiz app, including
the types of questions, target audience, and any
specific requirements.

• Designed User Interface (UI): Created mockups or


wireframes of the app screens to visualize the
layout, navigation flow, and overall design.

• Implemented UI Components: Developed the UI


layout using XML files, incorporating views such as
TextViews, Buttons, and RadioButtons as needed.

• Implemented Quiz Logic: Defined data models for


quiz questions and answers, and implemented logic
to load and display questions dynamically.

• Handled User Interaction: Implemented click


listeners for interactive elements and validated user
input, providing appropriate feedback.

• Calculated Scores: Developed logic to calculate the


user's score based on their answers and displayed
the total score at the end of the quiz.

• Tested and Debugged: Conducted thorough testing


on various devices and screen sizes to ensure
functionality, responsiveness, and compatibility.
6. ACTION PLAN :

Sr Details of Activity Planned Planned Name of members


No. starting date finishing date involved
1. Project definition and 15.02.24 21.02.24 Minakshi
requirements analysis

2. Environment setup and 22.02.24 28.02.24 Minakshi, Gayatri


designing

3. Coding, review & 29.02.24 19.03.24 Minakshi, Gayatri


refinement

4. Project submission 20.03.24 20.03.24 Minakshi, Gayatri

7. RESOURCES REQUIRED :

Sr. Device Specifications Quantity


No.
1. Laptop Acer, 12th gen 1
i5 processor,
12gb RAM
2. Software used Android 1
Studio
8. CODE SNIPPETS:

MainActivity.java:

package com.example.micro; btnStartQuiz.setOnClickListener


(new View.OnClickListener() {
import android.content.Intent; @Override
import android.os.Bundle; public void
import android.view.View; onClick(View v) {
import android.widget.Button; int
import selectedRadioButtonId =
android.widget.RadioButton; radioGroup.getCheckedRadioBu
import ttonId();
android.widget.RadioGroup; if
import android.widget.Toast; (selectedRadioButtonId == -1) {
import // No category
androidx.appcompat.app.AppCo selected
mpatActivity;
Toast.makeText(MainActivity.th
public class MainActivity is, "Please select a category",
extends AppCompatActivity { Toast.LENGTH_SHORT).show
();
private RadioGroup } else {
radioGroup; RadioButton
private Button btnStartQuiz; selectedRadioButton =
private String findViewById(selectedRadioBut
selectedCategory; tonId);
selectedCategory =
@Override selectedRadioButton.getText().t
protected void oString();
onCreate(Bundle
savedInstanceState) { startQuiz(selectedCategory);
}
super.onCreate(savedInstanceSt }
ate); });
}
setContentView(R.layout.activit
y_main); private void startQuiz(String
category) {
radioGroup = Intent intent = new
findViewById(R.id.radioGroup) Intent(MainActivity.this,
; QuizActivity.class);
btnStartQuiz =
findViewById(R.id.btnStartQuiz intent.putExtra("CATEGORY",
); category);
startActivity(intent); private int
} correctOptionIndex;
}
public Question(String
Question.java: question, String[] options, int
correctOptionIndex) {
package com.example.micro; this.question = question;
this.options = options;
public class Question { this.correctOptionIndex =
correctOptionIndex;
private String question; }
private String[] options;
private int public String getQuestion() {
correctOptionIndex; return question;
}
public Question(String
question, String[] options, int public String[] getOptions() {
correctOptionIndex) { return options;
this.question = question; }
this.options = options;
this.correctOptionIndex = public int
correctOptionIndex; getCorrectOptionIndex() {
} return correctOptionIndex;
}
public String getQuestion() { }
return question;
} activity_main.xml:

public String[] getOptions() { <!-- activity_main.xml -->


return options; <AbsoluteLayout
} xmlns:android="http://schemas.
android.com/apk/res/android"
public int
getCorrectOptionIndex() { xmlns:tools="http://schemas.an
return correctOptionIndex; droid.com/tools"
}
} android:layout_width="match_p
arent"
QuizActivity.java:
android:layout_height="match_
package com.example.micro; parent"
android:padding="16dp"
public class Question {
tools:context=".MainActivity">
private String question;
private String[] options; <ImageView
android:id="@+id/imageViewQ <TextView
uiz"
android:id="@+id/textViewRul
android:layout_width="416dp" e1"

android:layout_height="400dp" android:layout_width="wrap_co
ntent"
android:src="@drawable/quiz2"
android:layout_x="0dp" android:layout_height="wrap_c
android:layout_y="0dp" /> ontent"
android:text="1. Score will
<TextView be displayed at the end of the
quiz."
android:id="@+id/textViewWel android:layout_x="16dp"
come"
android:layout_y="500dp" />
android:layout_width="wrap_co
ntent" <TextView

android:layout_height="wrap_c android:id="@+id/textViewRul
ontent" e2"
android:text="Welcome to
the Quiz App!" android:layout_width="wrap_co
android:textSize="24sp" ntent"
android:textStyle="bold"
android:layout_x="50dp" android:layout_height="wrap_c
ontent"
android:layout_y="420dp" /> android:text="2. You can
only select one answer per
<TextView question."
android:layout_x="16dp"
android:id="@+id/textViewRul
es" android:layout_y="530dp" />

android:layout_width="wrap_co <RadioGroup
ntent"
android:id="@+id/radioGroup"
android:layout_height="wrap_c
ontent" android:layout_width="wrap_co
android:text="Rules:" ntent"
android:textSize="18sp"
android:textStyle="bold" android:layout_height="wrap_c
android:layout_x="16dp" ontent"
android:layout_x="20dp"
android:layout_y="470dp" /> android:layout_y="570dp"
<RadioButton
android:orientation="horizontal"
> android:id="@+id/radioIT"

<RadioButton android:layout_width="wrap_co
ntent"
android:id="@+id/radioScience
" android:layout_height="wrap_c
ontent"
android:layout_width="wrap_co android:text="IT"
ntent"
android:layout_x="140dp"
android:layout_height="wrap_c
ontent" android:layout_y="40dp" />
</RadioGroup>
android:text="Science" />
<Button
<RadioButton
android:id="@+id/btnStartQuiz
android:id="@+id/radioHistory" "

android:layout_width="wrap_co android:layout_width="wrap_co
ntent" ntent"

android:layout_height="wrap_c android:layout_height="wrap_c
ontent" ontent"
android:text="History" android:text="Start Quiz"
android:layout_x="130dp"
android:layout_marginLeft="20
dp" /> android:layout_y="640dp" />

<RadioButton </AbsoluteLayout>

android:id="@+id/radioPolitics" Activity_quiz.xml:

android:layout_width="wrap_co <!-- activity_quiz.xml -->


ntent" <RelativeLayout
xmlns:android="http://schemas.
android:layout_height="wrap_c android.com/apk/res/android"
ontent"
android:text="Politics" xmlns:tools="http://schemas.an
droid.com/tools"
android:layout_x="20dp"
android:layout_width="match_p
android:layout_y="40dp" /> arent"
android:layout_height="match_ android:id="@+id/radioGroup"
parent"
android:padding="16dp" android:layout_width="wrap_co
ntent"
tools:context=".QuizActivity">
android:layout_height="wrap_c
<TextView ontent"

android:id="@+id/txtCategory" android:layout_below="@id/txt
Question"
android:layout_width="wrap_co
ntent" android:layout_centerHorizontal
="true"
android:layout_height="wrap_c
ontent" android:orientation="vertical" /
android:textSize="18sp" >
android:textStyle="bold"
<Button
android:layout_centerHorizontal
="true" android:id="@+id/btnNext"

android:layout_marginBottom= android:layout_width="wrap_co
"20dp"/> ntent"

<TextView android:layout_height="wrap_c
ontent"
android:id="@+id/txtQuestion" android:text="Next"

android:layout_width="wrap_co android:layout_below="@id/rad
ntent" ioGroup"

android:layout_height="wrap_c android:layout_centerHorizontal
ontent" ="true"
android:textSize="16sp"
android:layout_marginTop="20
android:layout_below="@id/txt dp"/>
Category"
<TextView
android:layout_centerHorizontal
="true" android:id="@+id/txtResult"

android:layout_marginBottom= android:layout_width="wrap_co
"20dp"/> ntent"

<RadioGroup android:layout_height="wrap_c
ontent"
android:textSize="16sp" ="true"
android:textStyle="bold"
android:layout_marginTop="20
android:layout_below="@id/btn dp"/>
Next"
</RelativeLayout>
android:layout_centerHorizontal

9. OUTPUT:

You might also like