0% found this document useful (0 votes)
363 views

KRAI & Mobile App Development Practical Combo

The certificate certifies that Vishal Hanmantrao Sonkamble with seat number 22001 of S.Y.M.C.A semester 3 has successfully completed the laboratory course of Mobile Application Development and AI, KR, ML, DL in the academic year 2021-2022 as per the signatures of the subject teachers and approval of the head of MCA department and director of the institute. The certificate is issued on the letterhead of Abhinav Education Society's Institute of Management and Research located in Narhe, Pune.

Uploaded by

Contact Vishal
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)
363 views

KRAI & Mobile App Development Practical Combo

The certificate certifies that Vishal Hanmantrao Sonkamble with seat number 22001 of S.Y.M.C.A semester 3 has successfully completed the laboratory course of Mobile Application Development and AI, KR, ML, DL in the academic year 2021-2022 as per the signatures of the subject teachers and approval of the head of MCA department and director of the institute. The certificate is issued on the letterhead of Abhinav Education Society's Institute of Management and Research located in Narhe, Pune.

Uploaded by

Contact Vishal
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/ 107

Savitribai Phule Pune University

ABHINAV EDUCATION SOCIETY'S


INSTITUTE OF MANAGEMENT & RESEARCH
(MBA & MCA)
NARHE PUNE-41
2021-2022

Semester : III

Course Code: IT-31L

Course Name: Practical


[1.Mobile Application Development, 2.KR an AI, ML,DL]

Student Name : Vishal Hanmantrao Sonkamble

Roll Number : 59

Seat Number: 22001


CERTIFICATE

This is to certify that Mr./ Ms. Vishal Hanmantrao


Sonkamble Seat Number - 22001 of S.Y.M.C.A
Sem – III has successfully completed Laboratory course
(Mobile Application Development AND AI an KR, ML,
DL) in the year 2021-2022.

Prof. Priyanka Khopade (AI an KR, ML, DL)


Dr. Kalpana Salunkhe (Mobile Application Development)
(Subject Teacher)

Prof.Suraj Hingane Dr.N.G. Sarode


(HOD M.C.A Dept.) (Director)

Internal Examiner External Examiner


INDEX
Mobile Application Development

Sr.no Practical Questions Page Date Sign.


Demonstrate different Layouts with different views in
android LayoutsConstraintLayout, RelativeLayout,
TableLayout Views- Button, TextView, EditText,
1 7-13-21
WebView, CheckBox, RadioButton, ToggleButton,
ImageButton, RatingBar, ProgressBar, SeekBar,
VideoView, DatePicker, CalendarView, Spinner
Write an android code to make phone call using Intent.
2 13-12-21
Write an android code to turn ON/OFF Bluetooth.
3 20-12-21

4 Write an android code to turn ON /OFF the Wi-Fi. 27-12-21


Design android application for login activity. Write
android code to check login credentials with username =
5 3-1-22
"mca" and password = "android". Display appropriate
toast message to the user.
Create a fragment that has its own UI and enable your
6 10-1-22
activities to communicate with fragments.
Demonstrate Array Adapter using List View to display
7 17-1-22
list of fruits.
Write an application to demonstrate Alert Dialog Box in
8 24-1-22
android.
Demonstrate Options Menu, Context Menu and Popup
9 31-1-22
Menu in android.
10 Write an application to produce Notification. 7-2-22
Write an android application using SQLite to create
table and perform CRUD operations (Example.
11 COURSE table (ID, Name, Duration, Description), 14-2-22
perform ADD, UPDATE, DELETE and READ
operations)
Create an Android app, powered by Firebase Realtime
database that supports: Adding Data to Firebase
12 21-2-22
Realtime database, Retrieving Data from Firebase and
Deleting data from firebase data.
Demonstrate WebView to display the web pages in an
13 28-2-22
android application.
Write an android app to write JSON data into a file and
14 7-3-22
read JSON data from created file.
Write an application to display a PDF as an image in
15 14-3-22
React app using URL.
Develop simple flutter application to open a browser
16 21-3-22
using Android SDK.

Q. 1 Demonstrate different Layouts with different views in


android Layouts- ConstraintLayout, RelativeLayout,
TableLayout Views- Button, TextView, EditText, WebView,
CheckBox, RadioButton, ToggleButton, ImageButton, RatingBar,
ProgressBar, SeekBar, VideoView, DatePicker, CalendarView,
Spinner

1. ConstraintLayout with Button, RadioButton, ToggleButton,


ImageButton
Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button"
app:layout_constraintBottom_toTopOf="@+id/radioButton"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.507"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.757" />

<RadioButton
android:id="@+id/radioButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="60dp"
android:text="RadioButton"
app:layout_constraintBottom_toTopOf="@+id/toggleButton"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />

<ToggleButton
android:id="@+id/toggleButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="232dp"
android:text="ToggleButton"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent" />

<ImageButton
android:id="@+id/imageButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/toggleButton"
app:srcCompat="@android:drawable/btn_star_big_on" />

</androidx.constraintlayout.widget.ConstraintLayout>

MainActivity.java ::
package com.example.icem_pr_1_layouts;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}

Output ::
2. Relative Layout with TextView
Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<EditText
android:id="@+id/editTextTextPersonName"
android:layout_width="370dp"
android:layout_height="59dp"
android:ems="10"
android:inputType="textPersonName"
android:text="Name" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="Button" />
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/editTextTextPersonName"
android:layout_alignParentEnd="true"
android:layout_marginEnd="181dp"
android:layout_marginBottom="-133dp"
android:textStyle="bold"
android:textSize="20dp"
android:text="TextView" />
</RelativeLayout>

MainActivity.java ::
package com.example.icem_pr_1_relative;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {

Button btn;
EditText editText;
TextView textView;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

btn = findViewById(R.id.button);
editText = findViewById(R.id.editTextTextPersonName);
textView = findViewById(R.id.textView);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String userText = editText.getText().toString();
textView.setText(userText);
}
});
}
}

Output ::
3. CheckBox
Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
android:textStyle="bold"
android:textSize="20dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintHorizontal_bias="0.497"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.484" />
<CheckBox
android:id="@+id/java"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="60dp"
android:text="Java"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.135"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<CheckBox
android:id="@+id/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="24dp"
android:text="Android"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="@+id/java"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="@+id/java"
app:layout_constraintTop_toBottomOf="@+id/java" />
<CheckBox
android:id="@+id/python"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Python"
android:textStyle="bold"
app:layout_constraintBottom_toTopOf="@+id/textView"
app:layout_constraintEnd_toEndOf="@+id/android"
app:layout_constraintStart_toStartOf="@+id/android"
app:layout_constraintTop_toBottomOf="@+id/android"
app:layout_constraintVertical_bias="0.173" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Courses"
android:textStyle="bold"
android:textSize="20dp"
android:textColor="@color/teal_700"
app:layout_constraintBottom_toTopOf="@+id/java"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Select"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textView"
app:layout_constraintVertical_bias="0.225" />

</androidx.constraintlayout.widget.ConstraintLayout>

MainActivity.java ::
package com.example.checkbox;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {

CheckBox Java, Android, Python;


String courses = "Selected ";
TextView firstTV;
Button selectBtn;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

Java = findViewById(R.id.java);
Android = findViewById(R.id.android);
Python = findViewById(R.id.python);
firstTV = findViewById(R.id.textView);
selectBtn = findViewById(R.id.button);

selectBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
courses = "Selected ";
if (Java.isChecked()) {
courses += Java.getText().toString() + " .";
firstTV.setText(courses);
}
if (Android.isChecked()) {
courses += Android.getText().toString() + " .";
firstTV.setText(courses);
}
if (Python.isChecked()) {
courses += Python.getText().toString() + " .";
firstTV.setText(courses);
}
}
});
}
}

Output ::

4. TableLayout
Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="100dp"
android:paddingLeft="10dp"
android:paddingRight="10dp" >
<TableRow android:background="#0079D6" android:padding="5dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="UserId" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="User Name" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Location" />
</TableRow>
<TableRow android:background="#DAE8FC" android:padding="5dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="1" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Sumedh Chavan" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Pune" />
</TableRow>
<TableRow android:background="#DAE8FC" android:padding="5dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="2" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Sanket Modhe" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Mumbai" />
</TableRow>
<TableRow android:background="#DAE8FC" android:padding="5dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="3" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Ajit Gode" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Hyderabad" />
</TableRow>
</TableLayout>

MainActivity.java ::
package com.example.icem_pr_1_tablelayout;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
Output ::

5. LinearLayout with ProgressBar, SeekBar and RatingBar.


Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="15dp"
tools:context=".MainActivity">
<ProgressBar
android:id="@+id/progressBar2"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"/>
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="1dp"
android:textStyle="bold"
android:textSize="25dp"
android:textAlignment="center"
android:layout_marginBottom="40dp"
android:text="0%" />
<SeekBar
android:id="@+id/seekBar2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"/>
<TextView
android:id="@+id/textView2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:layout_marginBottom="15dp"
android:textStyle="bold"
android:textSize="25dp"
android:textAlignment="center"
android:text="0" />
<RatingBar
android:id="@+id/ratingBar"
android:layout_width="240dp"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:layout_marginLeft="50dp"
android:layout_marginBottom="15dp"/>
<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="80dp"
android:text="Bar Status" />
</LinearLayout>

MainActivity.java :
package com.example.icem_pr_1_rating_bars;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ProgressBar;
import android.widget.SeekBar;
import android.widget.TextView;
import java.util.Timer;
import java.util.TimerTask;

public class MainActivity extends AppCompatActivity {

ProgressBar pb;
TextView tv1,tv2;
SeekBar sb;
Button btn;
int counter = 0;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

pb = findViewById(R.id.progressBar2);
sb = findViewById(R.id.seekBar2);
tv1 = findViewById(R.id.textView);
tv2 = findViewById(R.id.textView2);
btn = findViewById(R.id.button);

btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
progbar();
}
});

sb.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
int i = 0;
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
i = progress;
tv2.setText(""+i);
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
});
}
private void progbar() {
final Timer t = new Timer();
TimerTask tt = new TimerTask() {
@Override
public void run() {
counter ++;
pb.setProgress(counter);
tv1.setText(""+counter+"%");
if(counter == 100)
{
t.cancel();
}
}
};
t.schedule(tt, 1, 100);
}

Output ::
6. DatePicker with different view like Calendar and Spinner
Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<EditText
android:layout_width="200dp"
android:layout_height="wrap_content"
android:id="@+id/in_date"
android:layout_marginTop="82dp"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="SELECT DATE"
android:id="@+id/btn_date"
android:layout_alignBottom="@+id/in_date"
android:layout_toRightOf="@+id/in_date"
android:layout_toEndOf="@+id/in_date" />

<EditText
android:layout_width="200dp"
android:layout_height="wrap_content"
android:id="@+id/in_time"
android:layout_below="@+id/in_date"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="SELECT TIME"
android:id="@+id/btn_time"
android:layout_below="@+id/btn_date"
android:layout_alignLeft="@+id/btn_date"
android:layout_alignStart="@+id/btn_date" />

</RelativeLayout>

MainActivity.java ::
package com.example.icem_1_datespinner;
import androidx.appcompat.app.AppCompatActivity;

import android.app.DatePickerDialog;
import android.app.TimePickerDialog;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.TimePicker;

import java.util.Calendar;

public class MainActivity extends AppCompatActivity implements


View.OnClickListener
{

Button btnDatePicker, btnTimePicker;


EditText txtDate, txtTime;
private int mYear, mMonth, mDay, mHour, mMinute;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

btnDatePicker=(Button)findViewById(R.id.btn_date);
btnTimePicker=(Button)findViewById(R.id.btn_time);
txtDate=(EditText)findViewById(R.id.in_date);
txtTime=(EditText)findViewById(R.id.in_time);

btnDatePicker.setOnClickListener(this);
btnTimePicker.setOnClickListener(this);

}
@Override
public void onClick(View v) {

if (v == btnDatePicker) {

// Get Current Date


final Calendar c = Calendar.getInstance();
mYear = c.get(Calendar.YEAR);
mMonth = c.get(Calendar.MONTH);
mDay = c.get(Calendar.DAY_OF_MONTH);

DatePickerDialog datePickerDialog = new DatePickerDialog(this,


new DatePickerDialog.OnDateSetListener() {

@Override
public void onDateSet(DatePicker view, int year,
int monthOfYear, int dayOfMonth) {

txtDate.setText(dayOfMonth + "-" + (monthOfYear + 1) + "-" + year);

}
}, mYear, mMonth, mDay);
datePickerDialog.show();
}
if (v == btnTimePicker) {

// Get Current Time


final Calendar c = Calendar.getInstance();
mHour = c.get(Calendar.HOUR_OF_DAY);
mMinute = c.get(Calendar.MINUTE);

// Launch Time Picker Dialog


TimePickerDialog timePickerDialog = new TimePickerDialog(this,
new TimePickerDialog.OnTimeSetListener() {

@Override
public void onTimeSet(TimePicker view, int hourOfDay,
int minute) {

txtTime.setText(hourOfDay + ":" + minute);


}
}, mHour, mMinute, false);
timePickerDialog.show();
}
}
}

Output ::
7. VideoView
Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<TextView
android:id="@+id/txtPlaceholder"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/videoView"
android:layout_centerHorizontal="true"
android:layout_margin="16dp"
android:text="DOUBLE TAP TO VIEW CONTROLS"
android:textStyle="bold" />

<VideoView
android:id="@+id/videoView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true" />

</RelativeLayout>

MainActivity.java ::
package com.example.icem_pr_1_videoview;

import androidx.appcompat.app.AppCompatActivity;

import android.media.MediaPlayer;
import android.widget.MediaController;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
import android.view.Menu;
import android.widget.Toast;
import android.widget.VideoView;

import java.util.ArrayList;
import java.util.Arrays;
public class MainActivity extends AppCompatActivity {

VideoView videoView;
ArrayList<String> arrayList = new
ArrayList<>(Arrays.asList("https://commondatastorage.googleapis.com/gtv-videos-bucket/
sample/BigBuckBunny.mp4", "https://commondatastorage.googleapis.com/gtv-videos-
bucket/sample/ElephantsDream.mp4"));
int index = 0;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

videoView = findViewById(R.id.videoView);
final MediaController mediacontroller = new MediaController(this);
mediacontroller.setAnchorView(videoView);

videoView.setMediaController(mediacontroller);
videoView.setVideoURI(Uri.parse(arrayList.get(index)));
videoView.requestFocus();

videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
Toast.makeText(getApplicationContext(), "Video over",
Toast.LENGTH_SHORT).show();
if (index++ == arrayList.size()) {
index = 0;
mp.release();
Toast.makeText(getApplicationContext(), "Video over",
Toast.LENGTH_SHORT).show();
} else {
videoView.setVideoURI(Uri.parse(arrayList.get(index)));
videoView.start();
}
}
});

videoView.setOnErrorListener(new MediaPlayer.OnErrorListener() {
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
Log.d("API123", "What " + what + " extra " + extra);
return false;
}
});
}
}

<uses-permission android:name="android.permission.INTERNET" />

Output :
Q. 2 Write an android code to make phone call using Intent

Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
tools:ignore="MissingConstraints">

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Dial No." />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView1"
android:layout_below="@+id/textView1"
android:layout_marginLeft="44dp"
android:layout_marginTop="84dp"
android:text="Call" />
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView1"
android:layout_below="@+id/textView1"
android:layout_marginLeft="18dp"
android:ems="10" >
<requestFocus />
</EditText>
</RelativeLayout>

</androidx.constraintlayout.widget.ConstraintLayout>
MainActivity.java ::
package com.example.icem_pr_2_phonecall;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends AppCompatActivity {

EditText et;
Button call_btn;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

et=(EditText)findViewById(R.id.editText1);
call_btn=(Button)findViewById(R.id.button1);

call_btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(Intent.ACTION_CALL);
i.setData(Uri.parse("tel:"+et.getText().toString()));
startActivity(i);
}
});
}
}

AndroidManifest.xml ::
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.icem_pr_2_phonecall">

<uses-permission android:name="android.permission.CALL_PHONE" />

<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.ICEM_Pr_2_PhoneCall">
<activity
android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />


</intent-filter>
</activity>
</application>

</manifest>

Output :
Q. 3 Write an android code to turn ON/OFF Bluetooth

Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<TextView
android:id="@+id/txtBTStatus"
android:layout_width="272dp"
android:layout_height="50dp"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_alignParentEnd="true"
android:hint="Bluetooth Status"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.496"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.635"
tools:ignore="MissingConstraints" />

<Switch
android:id="@+id/switchBT"
android:layout_width="134dp"
android:layout_height="44dp"
android:layout_below="@+id/txtBTStatus"
android:layout_alignParentStart="true"
android:layout_alignParentEnd="true"
android:layout_alignParentBottom="true"
android:text="Switch"
app:layout_constraintBottom_toTopOf="@+id/txtBTStatus"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.738"
tools:ignore="MissingConstraints,UseSwitchCompatOrMaterialXml" />

</androidx.constraintlayout.widget.ConstraintLayout>
MainActivity.java ::
package com.example.icem_pr_3_bluetooth;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.SwitchCompat;
import android.bluetooth.BluetoothAdapter;
import android.content.Intent;
import android.os.Bundle;
import android.widget.CompoundButton;
import android.widget.Switch;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {


Switch sw;
TextView textView;
BluetoothAdapter bt;
Intent bluetoothIntent;
int i = 1;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
sw = findViewById(R.id.switchBT);
textView = findViewById(R.id.txtBTStatus);

bt = BluetoothAdapter.getDefaultAdapter();
sw.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener()
{
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked){
bluetoothEnable();
}
else{
bluetoothDisable();
}
}
});
}
public void bluetoothEnable(){
bluetoothIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
startActivityForResult(bluetoothIntent, i);
textView.setText("Bluetooth is ON");
}
public void bluetoothDisable(){
bt.disable();
textView.setText("Bluetooth is OFF");
}
}
AndroidManifest.xml ::
<uses-permission android:name="android.permission.BLUETOOTH"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
Output ::
Q. 4 Write an android code to turn ON /OFF the Wi-Fi

Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<ToggleButton
android:id="@+id/toggleButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.427" />

<TextView
android:id="@+id/textView"
android:layout_width="136dp"
android:layout_height="38dp"
android:text="TextView"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/toggleButton"
app:layout_constraintVertical_bias="0.166" />
</androidx.constraintlayout.widget.ConstraintLayout>

MainActivity.java ::
package com.example.icem_pr_4_wifi;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Context;
import android.net.wifi.WifiManager;
import android.os.Bundle;
import android.widget.CompoundButton;
import android.widget.TextView;
import android.widget.ToggleButton;

public class MainActivity extends AppCompatActivity {

ToggleButton toggleButton;
TextView textView;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

toggleButton = findViewById(R.id.toggleButton);
textView = findViewById(R.id.textView);

toggleButton.setOnCheckedChangeListener(new
CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean checked) {
if(checked){
textView.setText("Wifi is ON");
WifiManager wifi = (WifiManager)
getApplicationContext().getSystemService(Context.WIFI_SERVICE);
wifi.setWifiEnabled(true);
}
else{
textView.setText("Wifi is OFF");
WifiManager wifi = (WifiManager)
getApplicationContext().getSystemService(Context.WIFI_SERVICE);
wifi.setWifiEnabled(false);
}
}
});

if(toggleButton.isChecked()){
textView.setText("Wifi is ON");
WifiManager wifi = (WifiManager)
getApplicationContext().getSystemService(Context.WIFI_SERVICE);
wifi.setWifiEnabled(true);
}
else{
textView.setText("Wifi is OFF");
WifiManager wifi = (WifiManager)
getApplicationContext().getSystemService(Context.WIFI_SERVICE);
wifi.setWifiEnabled(false);
}
}
}

AndroidManifest.xml ::
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>

Output ::
Q. 5 Design android application for login activity. Write android
code to check login credentials with username = "mca" and
password = "android". Display appropriate toast message to the
user.

Activity_man.xml ::

<?xml version="1.0" encoding="utf-8"?>


<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<EditText
android:id="@+id/txtUsername"
android:layout_width="241dp"
android:layout_height="50dp"
android:ems="10"
android:hint="Username"
android:inputType="textPersonName"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.333"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.301" />

<EditText
android:id="@+id/txtPassword"
android:layout_width="246dp"
android:layout_height="43dp"
android:ems="10"
android:hint="Password"
android:inputType="textPassword"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.333"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/txtUsername"
app:layout_constraintVertical_bias="0.103" />

<Button
android:id="@+id/btnLogin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Login"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.349"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/txtPassword"
app:layout_constraintVertical_bias="0.184"
tools:ignore="MissingConstraints" />

</androidx.constraintlayout.widget.ConstraintLayout>
MainActivity.java ::
package com.example.icem_pr_5_login;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

Button btn;
EditText edUser, edPassword;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

btn = findViewById(R.id.btnLogin);
edUser = findViewById(R.id.txtUsername);
edPassword = findViewById(R.id.txtPassword);

btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(edUser.getText().toString().equals("mca") &&
edPassword.getText().toString().equals("android")){
Toast.makeText(getApplicationContext(), "Login Successful! kindly wait you are
being redirecting to dashboard.", Toast.LENGTH_LONG).show();
}
else{
Toast.makeText(getApplicationContext(), "Something went wrong! Kindly check
the credentials.", Toast.LENGTH_LONG).show();
}
}
});
}
}

Output ::
Q. 6 Create a fragment that has its own UI and enable your activities to
communicate with fragments.
Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">

<Button
android:id="@+id/firstFragment"
android:layout_width="match_parent"
android:layout_height="wrap_content"

android:text="First Fragment"
android:textColor="@color/white"
android:textSize="20sp" />

<Button
android:id="@+id/secondFragment"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"

android:text="Second Fragment"
android:textColor="@color/white"
android:textSize="20sp" />

<FrameLayout
android:id="@+id/frameLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="10dp" />

</LinearLayout>

Fragment_first.xml ::
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
>

<!--TextView and Button displayed in First Fragment -->


<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="100dp"
android:text="This is First Fragment"
android:textColor="@color/black"
android:textSize="25sp" />

<Button
android:id="@+id/firstButton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"

android:text="First Fragment"
android:textColor="@color/white"
android:textSize="20sp"
android:textStyle="bold" />
</RelativeLayout>
Fragment_second.xml ::
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
>

<!--TextView and Button displayed in First Fragment -->


<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="100dp"
android:text="This is First Fragment"
android:textColor="@color/black"
android:textSize="25sp" />

<Button
android:id="@+id/firstButton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"

android:text="First Fragment"
android:textColor="@color/white"
android:textSize="20sp"
android:textStyle="bold" />
</RelativeLayout>

MainActivity.java ::
package com.example.icem_pr_6_fragment;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.Toast;

public class FirstFragment extends Fragment {

View view;
Button firstButton;

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
view = inflater.inflate(R.layout.fragment_first, container, false);
// get the reference of Button
firstButton = (Button) view.findViewById(R.id.firstButton);
// perform setOnClickListener on first Button
firstButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getActivity(), "First Fragment", Toast.LENGTH_LONG).show();
}
});
return view;
}
}

FirstFragment.java ::
package com.example.icem_pr_6_fragment;

import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.Toast;

public class FirstFragment extends Fragment {


View view;
Button firstButton;

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
view = inflater.inflate(R.layout.fragment_first, container, false);
// get the reference of Button
firstButton = (Button) view.findViewById(R.id.firstButton);
// perform setOnClickListener on first Button
firstButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getActivity(), "First Fragment", Toast.LENGTH_LONG).show();
}
});
return view;
}
}
SecondFragment.java ::
package com.example.icem_pr_6_fragment;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.Toast;

public class SecondFragment extends Fragment {

View view;
Button secondButton;

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
view = inflater.inflate(R.layout.fragment_second, container, false);
// get the reference of Button
secondButton = (Button) view.findViewById(R.id.secondButton);
// perform setOnClickListener on second Button
secondButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// display a message by using a Toast
Toast.makeText(getActivity(), "Second Fragment",
Toast.LENGTH_LONG).show();
}
});
return view;
}
}

Output ::
Q. 7 Demonstrate Array Adapter using List View to display list of
fruits.
MainActivity.java ::
package com.example.a07_arrayadapter_listview;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

ListView listview;
String listitems[];

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

listview = findViewById(R.id.listViewfruits);
listitems = getResources().getStringArray(R.array.fruits);

ArrayAdapter listadapter = ArrayAdapter.createFromResource(this, R.array.fruits,


android.R.layout.simple_list_item_1);
listview.setAdapter(listadapter);

listview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
TextView txt = (TextView) view;
Toast.makeText(getApplicationContext(), txt.getText() + " Fruit is selected",
Toast.LENGTH_SHORT).show();
}
});
}
}

activity_main.xml :
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<ListView
android:id="@+id/listViewfruits"
android:layout_width="286dp"
android:layout_height="419dp"
tools:layout_editor_absoluteX="46dp"
tools:layout_editor_absoluteY="74dp" />
</androidx.constraintlayout.widget.ConstraintLayout>

Strings.xml :
<resources>
<string name="app_name">07_ArrayAdapter_ListView</string>

<string-array name="fruits">
<item>Apple</item>
<item>Grapes</item>
<item>Orange</item>
<item>Strawberry</item>
<item>Banana</item>
<item>Watermelon</item>
<item>Kiwi</item>
</string-array>

</resources>

Output ::
Q. 8 Write an application to demonstrate Alert Dialog Box in
android

Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<Button
android:id="@+id/getBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Show Alert"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.367" />

</androidx.constraintlayout.widget.ConstraintLayout>

MainActivity.java ::
package com.example.icem_pr_8_alertdialogue;
import androidx.appcompat.app.AppCompatActivity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

Button btn = (Button)findViewById(R.id.getBtn);


btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle("*Alert*")
.setMessage("Are you sure, you want to continue ?")
.setCancelable(false)
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this,"Selected Option:
YES",Toast.LENGTH_SHORT).show();
}
})
.setNegativeButton("No", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this,"Selected Option:
No",Toast.LENGTH_SHORT).show();
}
});
//Creating dialog box
AlertDialog dialog = builder.create();
dialog.show();
}
});
}
}

Output ::

Q. 9 Demonstrate Options Menu, Context Menu and Popup


Menu in android

Option Menu and Context Menu


Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<Button
android:id="@+id/btnContext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.377" />
</androidx.constraintlayout.widget.ConstraintLayout>

MainActivity.java ::
package com.example.menudemo;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

Button btn;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

btn = findViewById(R.id.btnContext);
//Context Menu - long press
registerForContextMenu(btn);

@Override
public boolean onCreateOptionsMenu(Menu menu) {

MenuInflater m = getMenuInflater();
m.inflate(R.menu.optionmenu, menu);

return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {

switch(item.getItemId()){
case R.id.course1:
Toast.makeText(this, item.getTitle() + " is selected",
Toast.LENGTH_SHORT).show();
break;
case R.id.course2:
Toast.makeText(this, item.getTitle() + " is selected",
Toast.LENGTH_SHORT).show();
break;
case R.id.course3:
Toast.makeText(this, item.getTitle() + " is selected",
Toast.LENGTH_SHORT).show();
break;
case R.id.cpp: //subitem
Toast.makeText(this, item.getTitle() + " is selected",
Toast.LENGTH_SHORT).show();
break;
case R.id.java: //subitem
Toast.makeText(this, item.getTitle() + " is selected",
Toast.LENGTH_SHORT).show();
break;
case R.id.python: //subitem
Toast.makeText(this, item.getTitle() + " is selected",
Toast.LENGTH_SHORT).show();
break;

return super.onOptionsItemSelected(item);
}

@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenu.ContextMenuInfo menuInfo) {
MenuInflater m = getMenuInflater();
m.inflate(R.menu.optionmenu, menu);

super.onCreateContextMenu(menu, v, menuInfo);
}

@Override
public boolean onContextItemSelected(@NonNull MenuItem item) {

switch(item.getItemId()) {
case R.id.course1:
Toast.makeText(this, item.getTitle() + " is selected",
Toast.LENGTH_SHORT).show();
break;
case R.id.course2:
Toast.makeText(this, item.getTitle() + " is selected",
Toast.LENGTH_SHORT).show();
break;
case R.id.course3:
Toast.makeText(this, item.getTitle() + " is selected",
Toast.LENGTH_SHORT).show();
break;
case R.id.cpp: //subitem
Toast.makeText(this, item.getTitle() + " is selected",
Toast.LENGTH_SHORT).show();
break;
case R.id.java: //subitem
Toast.makeText(this, item.getTitle() + " is selected",
Toast.LENGTH_SHORT).show();
break;
case R.id.python: //subitem
Toast.makeText(this, item.getTitle() + " is selected",
Toast.LENGTH_SHORT).show();
break;
}
return super.onContextItemSelected(item);
}
}

optionmenu.xml ::
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">

<item android:title="Course1" android:id="@+id/course1">


<menu>
<item android:title="CPP" android:id="@+id/cpp"/>
<item android:title="Java" android:id="@+id/java"/>
<item android:title="Python" android:id="@+id/python"/>

</menu>
</item>
<item android:title="Course2" android:id="@+id/course2"/>
<item android:title="Course3" android:id="@+id/course3"/>
</menu>

Output ::
Popup Menu
Activity_main.xml ::
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<Button
android:id="@+id/btnpop"
android:layout_width="121dp"
android:layout_height="61dp"
android:text="Popup"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.272" />
</androidx.constraintlayout.widget.ConstraintLayout>

MainActivity.java ::
package com.example.popupmenudemo;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.PopupMenu;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

btn = findViewById(R.id.btnpop);

btn.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
//Creating the instance of PopupMenu
PopupMenu menu = new PopupMenu(MainActivity.this, btn);
//Inflating the Popup using xml file
menu.getMenuInflater().inflate(R.menu.popup, menu.getMenu());

//registering popup with OnMenuItemClickListener


menu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener()
{
@Override
public boolean onMenuItemClick(MenuItem item) {
Toast.makeText(MainActivity.this,"You have selected : " + item.getTitle(),
Toast.LENGTH_SHORT).show();

return false;
}
});
menu.show();
}
});
}
}

popup.xml ::
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">

<item
android:id="@+id/course1"
android:title="course_1" />
<item
android:id="@+id/course2"
android:title="Course_2" />
<item
android:id="@+id/course3"
android:title="Course_3" />
</menu>

Output ::
Q. 10 Write an application to produce Notification
Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">

<TextView
android:id="@+id/textView2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="your detail of notification..."
android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.173"
tools:ignore="MissingConstraints"
tools:layout_editor_absoluteX="16dp" />

<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"

android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.177"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textView2"
app:layout_constraintVertical_bias="0.229"
tools:ignore="MissingConstraints" />

</androidx.constraintlayout.widget.ConstraintLayout>

MainActivity.java ::
package com.example.icem_pr_10_notification;
import static android.content.Context.NOTIFICATION_SERVICE;
import android.app.NotificationChannel ;
import android.app.NotificationManager ;
import android.graphics.BitmapFactory ;
import android.os.Bundle ;
import android.view.View ;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.NotificationCompat;

public class MainActivity extends AppCompatActivity {


public static final String NOTIFICATION_CHANNEL_ID = "10001" ;
private final static String default_notification_channel_id = "default" ;
@Override
protected void onCreate (Bundle savedInstanceState) {
super .onCreate(savedInstanceState) ;
setContentView(R.layout. activity_main ) ;
}
public void createNotification (View view) {
NotificationManager mNotificationManager = (NotificationManager)
getSystemService( NOTIFICATION_SERVICE ) ;
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(MainActivity.
this, default_notification_channel_id ) ;
mBuilder.setContentTitle( "My Notification" ) ;
mBuilder.setContentText( "Welcome to ICEM!" ) ;
mBuilder.setLargeIcon(BitmapFactory. decodeResource (getResources() , R.drawable.
ic_launcher_foreground )) ;
mBuilder.setSmallIcon(R.drawable. ic_launcher_foreground ) ;
mBuilder.setAutoCancel( true ) ;
if (android.os.Build.VERSION. SDK_INT >= android.os.Build.VERSION_CODES. O )
{
int importance = NotificationManager. IMPORTANCE_HIGH ;
NotificationChannel notificationChannel = new NotificationChannel(
NOTIFICATION_CHANNEL_ID , "NOTIFICATION_CHANNEL_NAME" , importance) ;
mBuilder.setChannelId( NOTIFICATION_CHANNEL_ID ) ;
assert mNotificationManager != null;
mNotificationManager.createNotificationChannel(notificationChannel) ;
}
assert mNotificationManager != null;
mNotificationManager.notify(( int ) System. currentTimeMillis () , mBuilder.build()) ;
}
}

NotificationView.java :
package com.example.icem_pr_10_notification;
import android.os.Bundle;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;

public class NotificationView extends AppCompatActivity {

TextView textView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.notification_view);
textView = findViewById(R.id.textView);
//getting the notification message
String message=getIntent().getStringExtra("message");
textView.setText(message);
}
}

Output::
Q. 11 Write an android application using SQLite to create table
and perform CRUD operations (Example. COURSE table (ID,
Name, Duration, Description), perform ADD, UPDATE,
DELETE and READ operations)
Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<TextView

android:id="@+id/texttitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Regestration Page"
android:textSize="24dp"
android:layout_marginTop="20dp"/>

<EditText
android:id="@+id/fname"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="24dp"
android:layout_below="@+id/texttitle"
android:hint="FirstName"
android:inputType="textPersonName" />

<EditText
android:id="@+id/lname"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="24dp"
android:layout_below="@+id/fname"
android:hint="LastName"
android:inputType="textPersonName" />

<EditText
android:id="@+id/gender"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="24dp"
android:layout_below="@+id/lname"
android:hint="Gender"
android:inputType="text" />

<EditText
android:id="@+id/dob"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="24dp"
android:layout_below="@+id/gender"
android:hint="Date Of Birth"
android:inputType="text" />

<EditText
android:id="@+id/email"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="24dp"
android:layout_below="@+id/dob"
android:hint="Email Id"
android:inputType="text" />

<Button
android:id="@+id/btnInsert"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="24dp"
android:text="Insert Data"
android:layout_marginTop="30dp"
android:layout_below="@+id/email"/>

<Button
android:id="@+id/btnUpdate"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="24dp"
android:text="Update Data"
android:layout_below="@+id/btnInsert"/>

<Button
android:id="@+id/btnDelete"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="24dp"
android:text="Delete Data"
android:layout_below="@+id/btnUpdate"/>

<Button
android:id="@+id/btnView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="24dp"
android:text="View Data"
android:layout_below="@+id/btnDelete"/>

</RelativeLayout>

MainActivity.java ::
package com.example.icem_pr_12_sqlite_crud;
import androidx.appcompat.app.AppCompatActivity;
import android.app.AlertDialog;
import android.database.Cursor;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

EditText fname, lname, gender, dob, email;


Button insert, update, delete, view;
DBHelper DB;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

fname = findViewById(R.id.fname);
lname = findViewById(R.id.lname);
gender = findViewById(R.id.gender);
dob = findViewById(R.id.dob);
email = findViewById(R.id.email);

insert = findViewById(R.id.btnInsert);
update = findViewById(R.id.btnUpdate);
delete = findViewById(R.id.btnDelete);
view = findViewById(R.id.btnView);
DB = new DBHelper(this);

insert.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String fnameTXT = fname.getText().toString();
String lnameTXT = lname.getText().toString();
String genderTXT = gender.getText().toString();
String dobTXT = dob.getText().toString();
String emailTXT = email.getText().toString();
Boolean checkinsertdata = DB.insertuserdata(fnameTXT, lnameTXT, genderTXT,
dobTXT, emailTXT);
if (checkinsertdata==true)
Toast.makeText(MainActivity.this,"New Entery
Inserted",Toast.LENGTH_SHORT).show();
else
Toast.makeText(MainActivity.this,"Data Not Inserted
",Toast.LENGTH_SHORT).show();
}
});

update.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String fnameTXT = fname.getText().toString();
String lnameTXT = lname.getText().toString();
String genderTXT = gender.getText().toString();
String dobTXT = dob.getText().toString();
String emailTXT = email.getText().toString();

Boolean checkupdatedata = DB.updateuserdata(fnameTXT, lnameTXT,


genderTXT, dobTXT,emailTXT);
if (checkupdatedata==true)
Toast.makeText(MainActivity.this,"Entery
Updated",Toast.LENGTH_SHORT).show();
else
Toast.makeText(MainActivity.this,"Data Not Updated
",Toast.LENGTH_SHORT).show();
}
});

delete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String fnameTXT = fname.getText().toString();
Boolean checkdeletedata = DB.deleteuserdata(fnameTXT);
if (checkdeletedata==true)
Toast.makeText(MainActivity.this,"Data
Delted",Toast.LENGTH_SHORT).show();
else
Toast.makeText(MainActivity.this,"Data Not Deleted
",Toast.LENGTH_SHORT).show();
}
});

view.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Cursor res = DB.getdata();
if (res.getCount()==0){
Toast.makeText(MainActivity.this, " NO DATA ",
Toast.LENGTH_SHORT).show();
return;
}
StringBuffer buffer = new StringBuffer();
while (res.moveToNext()){
buffer.append("FirstName :"+res.getString(0)+"\n");
buffer.append("LastName :"+res.getString(1)+"\n");
buffer.append("Gender :"+res.getString(2)+"\n");
buffer.append("Date Of Birth :"+res.getString(3)+"\n");
buffer.append("Email :"+res.getString(4)+"\n\n\n");
}

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);


builder.setCancelable(true);
builder.setTitle("User Entries");
builder.setMessage(buffer.toString());
builder.show();
}
});
}
}

DBHelper.java ::
package com.example.icem_pr_12_sqlite_crud;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;

import androidx.annotation.Nullable;

public class DBHelper extends SQLiteOpenHelper {

public DBHelper(@Nullable Context context) {


super(context, "dbmca.db", null, 1);
}

@Override
public void onCreate(SQLiteDatabase DB) {
DB.execSQL("create Table stud_registration(firstname Text primary key, lastname
Text, gender Text, dob Text, emailid Text)");

}
@Override
public void onUpgrade(SQLiteDatabase DB, int i, int i1) {
DB.execSQL("drop Table if exists stud_registration");

public Boolean insertuserdata(String firstname,String lastname,String gender,String


dob,String emailid)
{
SQLiteDatabase DB = this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put("firstname", firstname);
contentValues.put("lastname", lastname);
contentValues.put("gender", gender);
contentValues.put("dob", dob);
contentValues.put("emailid", emailid);
long result=DB.insert("stud_registration",null, contentValues);
if(result==-1){
return false;
}else{
return true;
}

public Boolean updateuserdata(String firstname,String lastname,String gender,String


dob,String emailid)
{
SQLiteDatabase DB = this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put("lastname", lastname);
contentValues.put("gender", gender);
contentValues.put("dob", dob);
contentValues.put("emailid", emailid);
Cursor cursor = DB.rawQuery("Select * from stud_registration where firstname =?",
new String[]{firstname});
if (cursor.getCount()>0)
{

long result=DB.update("stud_registration", contentValues, "firstname=?", new


String[] {firstname});
if(result==-1){
return false;
}else{
return true;
}
}else
{
return false;
}
}

public Boolean deleteuserdata(String firstname)


{
SQLiteDatabase DB = this.getWritableDatabase();
Cursor cursor = DB.rawQuery("Select * from stud_registration where firstname =?",
new String[]{firstname});
if (cursor.getCount()>0)
{

long result=DB.delete("stud_registration", "firstname=?", new String[] {firstname});


if(result==-1){
return false;
}else{
return true;
}
}else
{
return false;
}
}

public Cursor getdata()


{
SQLiteDatabase DB = this.getWritableDatabase();
Cursor cursor = DB.rawQuery("Select * from stud_registration", null);
return cursor;
}
}

Output ::
Q. 12 Create an Android app, powered by Firebase Realtime
database that supports: Adding Data to Firebase Realtime
database, Retrieving Data from Firebase and Deleting data from
firebase data.
Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<Button
android:id="@+id/btn_CreateMain"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="btn_Create"
android:gravity="center"
android:layout_gravity="center"
android:background="@drawable/btn"
android:layout_marginBottom="10dp"/>
<androidx.recyclerview.widget.RecyclerView android:layout_height="match_parent"
android:layout_width="match_parent" android:id="@+id/list"/>

</LinearLayout>

Activity_second.xml :
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".SecondActivity">

<EditText
android:id="@+id/editTxtUsername"
android:layout_width="281dp"
android:layout_height="48dp"
android:background="@drawable/text"
android:ems="10"
android:hint="User Name"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.481"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.208"
tools:ignore="MissingConstraints" />

<EditText
android:id="@+id/editTxtEmail"
android:layout_width="283dp"
android:layout_height="42dp"
android:layout_marginTop="60dp"
android:background="@drawable/text"
android:ems="10"
android:hint="Email"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.507"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/editTxtUsername"
app:layout_constraintVertical_bias="0.0"
tools:ignore="MissingConstraints" />
<EditText
android:id="@+id/editTxtNumber"
android:layout_width="280dp"
android:layout_height="47dp"
android:background="@drawable/text"
android:ems="10"
android:hint="Number"
app:layout_constraintBottom_toTopOf="@+id/btnSubmit"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.496"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/editTxtEmail"
app:layout_constraintVertical_bias="0.331"
tools:ignore="MissingConstraints" />

<Button
android:id="@+id/btnSubmit"
android:layout_width="123dp"
android:layout_height="48dp"
android:background="@drawable/btn"
android:text="Submit"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.465"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.756"
tools:ignore="MissingConstraints" />

</androidx.constraintlayout.widget.ConstraintLayout>

List_items.xml :
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

<androidx.cardview.widget.CardView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:elevation="10dp"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:divider="@drawable/spaceing"
android:showDividers="middle"
android:paddingBottom="50dp"
android:gravity="center"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textItem"
android:paddingLeft="20dp"
android:textSize="20dp"
android:paddingRight="10dp"
android:layout_marginLeft="10dp"
android:layout_weight="1"
android:background="@drawable/text"
android:textColor="#000000"
/>

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_weight="1"
android:gravity="center"
android:orientation="horizontal">

<Button
android:id="@+id/editList_items"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/btn"
android:paddingRight="10dp"
android:text="Edit" />

<Button
android:id="@+id/deleteList_items"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:background="@drawable/btn"
android:paddingRight="10dp"
android:text="Delete" />

<Button
android:id="@+id/readList_items"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:background="@drawable/btn"
android:paddingRight="10dp"
android:text="Read" />
</LinearLayout>
</LinearLayout>
</androidx.cardview.widget.CardView>

</LinearLayout>

MainActivity.java ::
package com.example.icem_12_pr_firebase;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import com.example.icem_12_pr_firebase.DBHelper;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity {

private FirebaseDatabase firebaseDatabase;


private DatabaseReference databaseReference;
private static ArrayList<DBHelper> arrayList = new ArrayList<>();
private RecyclerView list;
private Button btnCreate;
public static Activity Fa;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

arrayList.clear();
Fa =this;
firebaseDatabase = FirebaseDatabase.getInstance();
databaseReference =firebaseDatabase.getReference("Users");
getUsers();
btnCreate = findViewById(R.id.btn_CreateMain);
list = findViewById(R.id.list);
DividerItemDecoration dividerItemDecoration = new
DividerItemDecoration(list.getContext(),
new LinearLayoutManager(this).getOrientation());
list.addItemDecoration(dividerItemDecoration);
list.setLayoutManager(new LinearLayoutManager(this));
list.setAdapter(new ListAdapter(arrayList,this ));
btnCreate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(MainActivity.this,SecondActivity.class);
String s;
s="Create";
i.putExtra("Button",s);
startActivity(i);
finish();
}
});
}
public void getUsers(){
databaseReference.addValueEventListener(new ValueEventListener() {
String userName, email, number;
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
for (DataSnapshot dataSnapshot: snapshot.getChildren()){
userName =dataSnapshot.child("userName").getValue().toString();
email = dataSnapshot.child("email").getValue().toString();
number = dataSnapshot.child("number").getValue().toString();
arrayList.add(new DBHelper(userName,email,number));;
}
list.setAdapter(new ListAdapter(arrayList,MainActivity.this));
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
}
});
}
@Override
public void onBackPressed() {
super.onBackPressed();
}
public static void cleanList(){
arrayList.clear();
}
}

ListAdapter.java ::
package com.example.icem_12_pr_firebase;
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.Intent;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import com.example.icem_12_pr_firebase.DBHelper;
import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.Task;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import java.util.ArrayList;
public class ListAdapter extends RecyclerView.Adapter<ListAdapter.ListHolder> {
private ArrayList<DBHelper> arrayList;
private Context context;
private DBHelper dbHelper;
private FirebaseDatabase firebaseDatabase;
private DatabaseReference databaseReference;
private int position;

public ListAdapter(ArrayList<DBHelper> arrayList,Context context) {


this.arrayList = arrayList;
this.context= context;
}
@NonNull
@Override
public ListHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
LayoutInflater inflater = LayoutInflater.from(parent.getContext());
View view = inflater.inflate(R.layout.list_items,parent,false);
return new ListHolder(view);
}
@Override
public void onBindViewHolder(@NonNull ListHolder holder,
@SuppressLint("RecyclerView") int position) {

Intent i = new Intent(context, SecondActivity.class);


String s1 = arrayList.get(position).getUserName();
holder.textList.setText(s1);
holder.editList_items.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dbHelper = arrayList.get(position);
i.putExtra("Button","Edit");
i.putExtra("userName",dbHelper.getUserName());
i.putExtra("email",dbHelper.getEmail());
i.putExtra("number",dbHelper.getNumber());
context.startActivity(i);
MainActivity.Fa.finish();
}
});
holder.readList_item.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dbHelper = arrayList.get(position);
i.putExtra("Button","Read");
i.putExtra("userName",dbHelper.getUserName());
i.putExtra("email",dbHelper.getEmail());
i.putExtra("number",dbHelper.getNumber());
context.startActivity(i);
MainActivity.Fa.finish();
}
});
holder.deleteList_items.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dbHelper = arrayList.get(position);
firebaseDatabase = FirebaseDatabase.getInstance();
databaseReference =firebaseDatabase.getReference("Users");
String temp =dbHelper.getUserName();
databaseReference.child(temp).removeValue().addOnCompleteListener(new
OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()){
Toast.makeText(context,"Data Removed",Toast.LENGTH_SHORT).show();
}else {
Toast.makeText(context,"Failed to remove
data",Toast.LENGTH_SHORT).show();
}
}
});
MainActivity.cleanList();
}
});
}
@Override
public int getItemCount() {
return arrayList.size();
}
public class ListHolder extends RecyclerView.ViewHolder{
private TextView textList;
private Button editList_items,deleteList_items,readList_item;
public ListHolder(@NonNull View itemView ) {
super(itemView);
textList =(TextView) itemView.findViewById(R.id.textItem);
editList_items =(Button) itemView.findViewById(R.id.editList_items);
deleteList_items = (Button) itemView.findViewById(R.id.deleteList_items);
readList_item = (Button) itemView.findViewById(R.id.readList_items);
}
}
}

DBHelper.java :
package com.example.icem_12_pr_firebase;

public class DBHelper {


private String userName;
private String email;
private String number;
public DBHelper(String userName, String email, String number) {
this.userName = userName;
this.email = email;
this.number = number;
}
public String getUserName() {
return userName;
}
public String getEmail() {
return email;
}
public String getNumber() {
return number;
}
}

Output ::
Q. 13 Demonstrate WebView to display the web pages in an
android application.
Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="ANDROID NOTIFICATION"
android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintHorizontal_bias="0.497"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.188" />

<Button
android:id="@+id/btn"
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:layout_centerInParent = "true"
android:layout_margin = "16dp"
android:onClick = "createNotification"
android:text = "create notification"
tools:ignore="MissingConstraints" />

</androidx.constraintlayout.widget.ConstraintLayout>

Notification_view.xml ::
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="your detail of notification..."
android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.173"
tools:ignore="MissingConstraints"
tools:layout_editor_absoluteX="16dp" />

<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.177"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textView2"
app:layout_constraintVertical_bias="0.229"
tools:ignore="MissingConstraints" />

</androidx.constraintlayout.widget.ConstraintLayout>

MainActivity.java ::
package com.example.icem_pr_10_notification;
import static android.content.Context.NOTIFICATION_SERVICE;

import android.app.NotificationChannel ;
import android.app.NotificationManager ;
import android.graphics.BitmapFactory ;
import android.os.Bundle ;
import android.view.View ;

import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.NotificationCompat;

public class MainActivity extends AppCompatActivity {


public static final String NOTIFICATION_CHANNEL_ID = "10001" ;
private final static String default_notification_channel_id = "default" ;
@Override
protected void onCreate (Bundle savedInstanceState) {
super .onCreate(savedInstanceState) ;
setContentView(R.layout. activity_main ) ;
}
public void createNotification (View view) {
NotificationManager mNotificationManager = (NotificationManager)
getSystemService( NOTIFICATION_SERVICE ) ;
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(MainActivity.
this, default_notification_channel_id ) ;
mBuilder.setContentTitle( "My Notification" ) ;
mBuilder.setContentText( "Welcome to ICEM!" ) ;
mBuilder.setLargeIcon(BitmapFactory. decodeResource (getResources() , R.drawable.
ic_launcher_foreground )) ;
mBuilder.setSmallIcon(R.drawable. ic_launcher_foreground ) ;
mBuilder.setAutoCancel( true ) ;
if (android.os.Build.VERSION. SDK_INT >= android.os.Build.VERSION_CODES. O )
{
int importance = NotificationManager. IMPORTANCE_HIGH ;
NotificationChannel notificationChannel = new NotificationChannel(
NOTIFICATION_CHANNEL_ID , "NOTIFICATION_CHANNEL_NAME" , importance) ;
mBuilder.setChannelId( NOTIFICATION_CHANNEL_ID ) ;
assert mNotificationManager != null;
mNotificationManager.createNotificationChannel(notificationChannel) ;
}
assert mNotificationManager != null;
mNotificationManager.notify(( int ) System. currentTimeMillis () , mBuilder.build()) ;
}
}

NotificationView.java ::
package com.example.icem_pr_10_notification;

import android.os.Bundle;
import android.widget.TextView;

import androidx.appcompat.app.AppCompatActivity;

public class NotificationView extends AppCompatActivity {

TextView textView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.notification_view);
textView = findViewById(R.id.textView);
//getting the notification message
String message=getIntent().getStringExtra("message");
textView.setText(message);
}
}
Output ::

Q. 14 Write an android app to write JSON data into a file and


read JSON data from created file.
Activity_man.xml ::
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="50dp"
android:text="Name"
android:textColor="#000"
android:textSize="20sp" />

<TextView
android:id="@+id/salary"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="80dp"
android:text="Salary"
android:textColor="#000"
android:textSize="20sp"
/>

</RelativeLayout>

MainActivity.java ::
package com.example.icem_pr_14_json_rw;
import androidx.appcompat.app.AppCompatActivity;
import android.annotation.SuppressLint;
import android.os.Bundle;
import android.widget.TextView;
import org.json.JSONException;
import org.json.JSONObject;

public class MainActivity extends AppCompatActivity {

String JSON_STRING = "{\"employee\":{\"name\":\"Suraj\",\"salary\":100000}}";


String name, salary;
TextView employeeName, employeeSalary;

@SuppressLint("SetTextI18n")

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

// get the reference of TextView's


employeeName = findViewById(R.id.name);
employeeSalary = findViewById(R.id.salary);

try {
// get JSONObject from JSON file
JSONObject obj = (new
JSONObject(JSON_STRING)).getJSONObject("employee");
// get employee name and salary
name = obj.getString("name");
salary = obj.getString("salary");
// set employee name and salary in TextView's
employeeName.setText("Name: "+name);
employeeSalary.setText("Salary: "+salary);

} catch (JSONException e) { e.printStackTrace();


}
}
}

Output ::
Q. 15 Write an application to display a PDF as an image in React
app using URL
App.js :
import React from "react";

import SinglePagePDFViewer from "./components/pdf/single-page";

/* This is required only if the project file is located


inside the app. Otherwise you can use the external link of the pdf file*/
import samplePDF from "./sample.pdf";

import "./styles.css";

export default function App() {


  return (
    <div className="App">
      <h4>Single Page</h4>
      <SinglePagePDFViewer pdf={samplePDF} />
    </div>
  );
}

Single-page.js :
import React, { useState } from "react";
import { Document, Page } from "react-pdf";

export default function SinglePage(props) {


  const [numPages, setNumPages] = useState(null);
  const [pageNumber, setPageNumber] = useState(1); //setting 1 to show fisrt page

  function onDocumentLoadSuccess({ numPages }) {


    setNumPages(numPages);
    setPageNumber(1);
 }

  function changePage(offset) {
    setPageNumber(prevPageNumber => prevPageNumber + offset);
 }

  function previousPage() {
    changePage(-1);
 }

  function nextPage() {
    changePage(1);
 }

  const { pdf } = props;

  return (
    <>
      <Document
        file={pdf}
        options={{ workerSrc: "/pdf.worker.js" }}
        onLoadSuccess={onDocumentLoadSuccess}
   >
        <Page pageNumber={pageNumber} />
      </Document>
      <div>
        <p>
          Page {pageNumber || (numPages ? 1 : "--")} of {numPages || "--"}
        </p>
        <button type="button" disabled={pageNumber <= 1} onClick={previousPage}>
          Previous
        </button>
        <button
          type="button"
          disabled={pageNumber >= numPages}
          onClick={nextPage}
    >
          Next
        </button>
      </div>
    </>
  );
}

Output :
Q. 16 Develop simple flutter application to open a browser using
Android SDK
Main.dart :
import 'package:flutter/material.dart';

void main() {
runApp(const MyApp());
}

class MyApp extends StatelessWidget {


const MyApp({Key? key}) : super(key: key);

@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Hello World Application',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: const MyHomePage(title: 'ICEM Home Page'),
);
}
}

class MyHomePage extends StatefulWidget {


const MyHomePage({Key? key, required this.title}) : super(key: key);

final String title;

@override
State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {


int _counter = 0;

void _incrementCounter() {
setState(() {

_counter++;
});
}

@override
Widget build(BuildContext context) {

return Scaffold(
appBar: AppBar(

title: Text(widget.title),
),
body: Center(

child: Column(

mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
const Text(
'Hello World',
),
Text(
'$_counter',
style: Theme.of(context).textTheme.headline4,
),
],
),
),
floatingActionButton: FloatingActionButton(
onPressed: _incrementCounter,
tooltip: 'Increment',
child: const Icon(Icons.add),
), // This trailing comma makes auto-formatting nicer for build methods.
);
}
}

Output ::
INDEX
KR an AI, ML, DL
Sr.no Practical Questions Page Date Sign.
Create a data-frame from dictionary of series.
Perform column selection, column addition, column
1 1-12-21
deletion, row addition and row deletion operations
on it.

2 Find the correlation of the matrix 6-12-21


Plot the Correlation plot on data set and visualize
3 giving an overview of relationship among data on 10-12-21
iris data.
Analysis of covariance: variance (ANOVA), if data
4 15-12-21
have categorical variables on iris data.
Apply linear regression model techniques to predict
5 17-12-21
the data on any dataset.
Apply logical linear regression model technique to
6 22-12-21
predict the data on any data set.
Clustering algorithms for unsupervised
7 24-12-21
classification.
8 Bayesian classification on any dataset 29-12-21

9 SVM classification on any data set 5-1-22


10 Plot the cluster data using python visualization 12-1-22
Creating &Visualizing Neural Network for the
11 19-1-22
given data. (Use python)
12 Write a program to implement CNN 2-2-22

13 Write a program to implement RNN 9-2-22


14 Web scraping experiments 16-2-22
01.Create a data-frame from dictionary of series. Perform
column selection, column addition, column deletion, row
addition and row deletion operations on it.

import pandas as pd
data = [{'a': 100, 'b': 200,'c':300},{'a': 150, 'b': 700, 'c': 500}]
df = pd.DataFrame(data)
print(df)

Output:
02. Find the correlation of the matrix

import pandas as pd

# collect data
data = {
    'x': [45, 37, 42, 35, 39],
    'y': [38, 31, 26, 28, 33],
    'z': [10, 15, 17, 21, 12]
}

# form dataframe
dataframe = pd.DataFrame(data, columns=['x',
'y', 'z'])
print("Dataframe is : ")
print(dataframe)

# form correlation matrix


matrix = dataframe.corr()
print("Correlation matrix is : ")
print(matrix)
Output:
Q3.Plot the Correlation plot on data set and visualize giving
an overview of relationship among data on iris data.
Code:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

data = pd.read_csv("iris.csv")

print (data.head(8))
plt.plot(data.Id, data["SepalLengthCm"], "r--")
plt.show()
data.plot(kind="scatter",
          x='SepalLengthCm',
          y='PetalLengthCm')
plt.grid()
plt.show()

output:
4. Analysis of covariance: variance (ANOVA), if data have
categorical variables on iris data.

import pandas as pd
import seaborn as sn
import matplotlib.pyplot as plt

d1 =pd.read_csv(r'Iris.csv')
observation_size = d1.shape[0]
_ = d1.boxplot('SepalLengthCm', by="Species")
_ = d1.boxplot('PetalLengthCm', by="Species")

plt.show()
5. Apply linear regression model techniques to predict the
data on any dataset

# Importingnaumpy and pandas libraries to read the data


import matplotlib.pyplot as plt
import seaborn as sns

# Import the numpy and pandas package


import numpy as np
import pandas as pd

from sklearn.model_selection import train_test_split

# Read the given CSV file, and view some sample records
advertising = pd.read_csv("Company_data.csv")
print(advertising)

# Shape of our dataset


advertising.shape

# Info our dataset


advertising.info()

# Describe our dataset


advertising.describe()
sns.pairplot(advertising, x_vars=['TV', 'Radio','Newspaper'],
y_vars='Sales', size=4, aspect=1, kind='scatter')
plt.show()

# Visualizing the data using heatmap


sns.heatmap(advertising.corr(), cmap="YlGnBu", annot =
True)
plt.show()

# # Visualizing the regression line


X = advertising['TV']
y = advertising['Sales']
X_train, X_test, y_train, y_test = train_test_split(X, y,
train_size = 0.7,
test_size = 0.3, random_state = 100)

plt.scatter(X_train, y_train)
plt.plot(X_train, 6.948 + 0.054*X_train, 'r')
plt.show()
6. Apply logical linear regression model technique to predict
the data on any data set.

#import pandas
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np

col_names = ['pregnant', 'glucose', 'bp', 'skin', 'insulin', 'bmi',


'pedigree', 'age', 'label']
# load dataset
pima = pd.read_csv("pima-indians-diabetes.csv",
header=None, names=col_names)

#split dataset in features and target variable


feature_cols = ['pregnant', 'insulin', 'bmi',
'age','glucose','bp','pedigree']
X = pima[feature_cols] # Features
y = pima.label# Target variable
# split X and y into training and testing sets
# from sklearn.cross_validation import train_test_split
from sklearn.model_selection import train_test_split
X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.
25,random_state=0)
# import the class
from sklearn.linear_model import LogisticRegression
# from sklearn.linear_model import TweedieRegressor
# instantiate the model (using the default parameters)
# clf = LogisticRegression(solver='liblinear')
logreg = LogisticRegression(solver='liblinear',
random_state=0).fit(X_train,y_train)
# fit the model with data

y_pred=logreg.predict(X_test)
#print(pima.head(4))

# import the metrics class


from sklearn import metrics
cnf_matrix = metrics.confusion_matrix(y_test,y_pred)
print(cnf_matrix)

import seaborn as sns


class_names=[0,1] # name of classes
fig, ax = plt.subplots()
tick_marks = np.arange(len(class_names))
plt.xticks(tick_marks, class_names)
plt.yticks(tick_marks, class_names)

# create heatmap
sns.heatmap(pd.DataFrame(cnf_matrix), annot=True,
cmap="YlGnBu" ,fmt='g')
ax.xaxis.set_label_position("top")
plt.tight_layout()
plt.title('Confusion matrix', y=1.1)
plt.ylabel('Actual label')
plt.xlabel('Predicted label')
plt.Text(0.5,257.44,'Predicted label')
plt.show()

y_pred_proba = logreg.predict_proba(X_test)[::,1]
fpr, tpr, _ = metrics.roc_curve(y_test, y_pred_proba)
auc = metrics.roc_auc_score(y_test, y_pred_proba)
plt.plot(fpr,tpr,label="data 1, auc="+str(auc))
plt.legend(loc=4)
plt.show()
7. Clustering algorithms for unsupervised classification.

# check scikit-learn version


import sklearn

# print(sklearn._version_)
# synthetic classification dataset
from numpy import where
from sklearn.datasets import make_classification
from matplotlib import pyplot

# define dataset
X, y = make_classification(n_samples=100, n_features=2,
n_informative=2, n_redundant=0, n_clusters_per_class=1,
random_state=4)
# create scatter plot for samples from each class

for class_value in range(2):


# get row indexes for samples with this class
row_ix = where(y == class_value)
# create scatter of these samples
pyplot.scatter(X[row_ix, 0], X[row_ix, 1])
# show the plot
pyplot.show()

Output:
8. Bayesian classification on any dataset

# load the iris dataset


from sklearn.datasets import load_iris
iris = load_iris()

# store the feature matrix (X) and response vector (y)


X = iris.data
y = iris.target

# splitting X and y into training and testing sets


from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y,
test_size=0.4, random_state=1)

# training the model on training set


from sklearn.naive_bayes import GaussianNB
gnb = GaussianNB()
gnb.fit(X_train, y_train)

# making predictions on the testing set


y_pred = gnb.predict(X_test)
# comparing actual response values (y_test) with predicted
response values (y_pred)
from sklearn import metrics
print("Gaussian Naive Bayes model accuracy(in %):",
metrics.accuracy_score(y_test, y_pred)*100)

Output:
9. SVM classification on any data set

# importingscikit learn with make_blobs


from sklearn.datasets import make_blobs
import numpy as np

import matplotlib.pyplot as plt

# creating datasets X containing n_samples


# Y containing two classes
X, Y = make_blobs(n_samples=500, centers=2,
random_state=0, cluster_std=0.40)

# plotting scatters
plt.scatter(X[:, 0], X[:, 1], c=Y, s=50, cmap='spring');
plt.show()
# creating line space between -1 to 3.5
xfit = np.linspace(-1, 3.5)

# plotting scatter
plt.scatter(X[:, 0], X[:, 1], c=Y, s=50, cmap='spring')
# plot a line between the different sets of data
for m, b, d in [(1, 0.65, 0.33), (0.5, 1.6, 0.55), (-0.2, 2.9, 0.2)]:
yfit = m * xfit + b
plt.plot(xfit, yfit, '-k')
plt.fill_between(xfit, yfit - d, yfit + d, edgecolor='none',
color='#AAAAAA', alpha=0.4)

plt.xlim(-1, 3.5)
plt.show()

output:
Q10. Plot the cluster data using python visualization

# Use comapany_sales_data.csv and perform


below operations:
#1. Read Total profit of all months and show it
using a line plot.
import matplotlib.pyplot as plt
import pandas as pd
df =pd.read_csv(r'company_sales_data.csv')
print("Line Plot")
plt.title("Profit")
plt.ylabel('total')
plt.xlabel('month')
plt.plot(df.month_number,df.total_profit)
plt.show()

11. Write a program to implement RNN (Recurrent neural


network)

import numpy as np
import math
import pylab
import matplotlib.pyplot as plt
import seaborn as sns
sin_wave = np.array([math.sin(x) for x in np.arange(200)])
plt.plot(sin_wave[:50])
plt.show()

Output:
12 Web scraping experiments

Code:
import requests
from bs4 import BeautifulSoup
req
=requests.get("https://www.javatpoint.com/")
s = BeautifulSoup(req.content ,
"html.parser")
res = s.title
print (res)

output:

You might also like