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

Android Lab Manual

The document describes creating two Android programs. Program 1 involves creating a contacts app that displays contacts vertically with the selected contact at the top in a large blue font. Program 2 involves creating an app with two activities - a main activity with text fields and buttons in a grid layout, and a second activity to display passed data. The steps include creating projects in Android Studio, designing layouts in XML with buttons, text views and grids, and writing Java code to pass data between activities via intents.

Uploaded by

Punidha Moorthy
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views

Android Lab Manual

The document describes creating two Android programs. Program 1 involves creating a contacts app that displays contacts vertically with the selected contact at the top in a large blue font. Program 2 involves creating an app with two activities - a main activity with text fields and buttons in a grid layout, and a second activity to display passed data. The steps include creating projects in Android Studio, designing layouts in XML with buttons, text views and grids, and writing Java code to pass data between activities via intents.

Uploaded by

Punidha Moorthy
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 47

PROGRAM 1:-

Design an application that contains phone contacts in vertical linear manner.


Selected contact appears at the top of the list with a large italicized font and a
blue background.
Procedure:
Creating a New project:
▪ Open Android Studio and then click on File -> New -> New project.

▪ Then type the Application name as “ex.no.10″ and click Next.

▪ Then select the Minimum SDK as shown below and click Next.

PES 1|Page
▪ Then select the Empty Activity and click Next.

▪ Finally click Finish.

PES 2|Page
▪ It will take some time to build and load the project.
▪ After completion it will look as given below.

XML code

<Button
android:id="@+id/button_call"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="onclickphonecall"
android:text="XYZ"

PES 3|Page
tools:layout_editor_absoluteX="131dp"
tools:layout_editor_absoluteY="59dp" />

public void onclickphonecall(View v) {

String URL="1234567890";
Uri u= Uri.parse("tel:"+URL);
Intent i=new Intent(Intent.ACTION_VIEW, u);
startActivity(i);
}

OUTPUT:-

PES 4|Page
PROGRAM 2:-
Create an application that uses Layout Managers and Event Listeners.
Procedure:
Creating a New project:
▪ Open Android Stdio and then click on File -> New -> New project.

▪ Then type the Application name as “ex.no.2″ and click Next.

▪ Then select the Minimum SDK as shown below and click Next.

PES 5|Page
▪ Then select the Empty Activity and click Next.

▪ Finally click Finish.

PES 6|Page
▪ It will take some time to build and load the project.
▪ After completion it will look as given below.

Creating Second Activity for the Android Application:


▪ Click on File -> New -> Activity -> Empty Activity.

PES 7|Page
▪ Type the Activity Name as SecondActivity and click Finish button.

▪ Thus Second Activity For the application is created.


Designing layout for the Android Application:
Designing Layout for Main Activity:
▪ Click on app -> res -> layout -> activity_main.xml.

PES 8|Page
▪ Now click on Text as shown below.

▪ Then delete the code which is there and type the code as given below.
Code for Activity_main.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">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="100dp">
<TextView
android:id="@+id/textView"

PES 9|Page
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="30dp"
android:text="Details Form"
android:textSize="25sp"
android:gravity="center"/>
</LinearLayout>

<GridLayout
android:id="@+id/gridLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="100dp"
android:layout_marginBottom="200dp"
android:columnCount="2"
android:rowCount="3">
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:layout_row="0"
android:layout_column="0"
android:text="Name"
android:textSize="20sp"
android:gravity="center"/>
<EditText
android:id="@+id/editText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:layout_row="0"
android:layout_column="1"
android:ems="10"/>

<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:layout_row="1"
android:layout_column="0"
android:text="Reg.No"
android:textSize="20sp"
android:gravity="center"/>
<EditText

PES 10 | P a g e
android:id="@+id/editText2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:layout_row="1"
android:layout_column="1"
android:inputType="number"
android:ems="10"/>

<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:layout_row="2"
android:layout_column="0"
android:text="Dept"
android:textSize="20sp"
android:gravity="center"/>
<Spinner
android:id="@+id/spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:layout_row="2"
android:layout_column="1"
android:spinnerMode="dropdown"/>

</GridLayout>
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerInParent="true"
android:layout_marginBottom="150dp"
android:text="Submit"/>
</RelativeLayout>
▪ Now click on Design and your activity will look as given below.

PES 11 | P a g e
▪ So now the designing part of Main Activity is
completed. Designing Layout for Second Activity:
▪ Click on app -> res -> layout -> activity_second.xml.

▪ Now click on Text as shown below.

PES 12 | P a g e
▪ Then delete the code which is there and type the code as given below.
Code for Activity_second.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"
tools:context="com.example.devang.exno2.SecondActivity"
android:orientation="vertical"
android:gravity="center">
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:text="New Text"
android:textSize="30sp"/>
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:text="New Text"
android:textSize="30sp"/
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="20dp"

PES 13 | P a g e
android:text="New Text"
android:textSize="30sp"/>
</LinearLayout>
▪ Now click on Design and your activity will look as given below.

▪ So now the designing part of Second Activity is also


completed. Java Coding for the Android Application:
Java Coidng for Main Activity:
▪ Click on app -> java -> com.example.exno2 -> MainActivity.

▪ Then delete the code which is there and type the code as given below.
Code for MainActivity.java:

package com.example.exno2;
import android.content.Intent;

PES 14 | P a g e
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
public class MainActivity extends AppCompatActivity {

EditText e1,e2;
Button bt;
Spinner s;
String [] dept_array={"CSE","ECE","IT","Mech","Civil"};
String name,reg,dept;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
e1= (EditText) findViewById(R.id.editText);
e2= (EditText) findViewById(R.id.editText2);
bt= (Button) findViewById(R.id.button);
s= (Spinner) findViewById(R.id.spinner);
ArrayAdapter adapter= new
ArrayAdapter(MainActivity.this,android.R.layout.simple_spinner_item,dept_arra s.setAdapter(adapter);
bt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//Getting the Values from Views(Edittext & Spinner)
name=e1.getText().toString();
reg=e2.getText().toString();
dept=s.getSelectedItem().toString();
Intent i = new Intent(MainActivity.this,SecondActivity.class);
i.putExtra("name_key", name);
i.putExtra("reg_key",reg);
i.putExtra("dept_key", dept);
startActivity(i);
}
});
}
}
So now the Coding part of Main Activity is completed. Java Coding for Second Activity:
Click on app -> java -> com.example.exno2 -> SecondActivity.

PES 15 | P a g e
Then delete the code which is there and type the code as given below.
Code for SecondActivity.java:

package com.example.exno2;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle; import
android.widget.TextView;
public class SecondActivity extends AppCompatActivity
{ TextView t1,t2,t3;
String name,reg,dept;
@Override
protected void onCreate(Bundle savedInstanceState)
{ super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
t1= (TextView) findViewById(R.id.textView1);
t2= (TextView) findViewById(R.id.textView2);
t3= (TextView) findViewById(R.id.textView3);
Intent i = getIntent();
name=i.getStringExtra("name_key");
reg=i.getStringExtra("reg_key");
dept=i.getStringExtra("dept_key");
//Setting the Values to Intent
t1.setText(name);
t2.setText(reg);
t3.setText(dept);
}
}

PES 16 | P a g e
OUTPUT:-

PES 17 | P a g e
PROGRAM 3:-
Develop a standard calculator application to perform basic calculations
like addition,subtraction,multiplication and division.

<?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="com.example.siri.calc.MainActivity">

<TextView
android:id="@+id/result"
android:layout_width="match_parent"
android:layout_height="wrap_content"
tools:layout_editor_absoluteX="153dp"
tools:layout_editor_absoluteY="9dp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />

<EditText
android:id="@+id/editText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="number"
tools:layout_editor_absoluteY="58dp"
tools:layout_editor_absoluteX="16dp"
android:layout_above="@+id/editText2"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginBottom="31dp" />

<EditText
android:id="@+id/editText2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="number"

PES 18 | P a g e
tools:layout_editor_absoluteY="125dp"
tools:layout_editor_absoluteX="16dp"
android:layout_above="@+id/button"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginBottom="43dp" />

<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="ADD"
android:onClick="add"
tools:layout_editor_absoluteX="34dp"
tools:layout_editor_absoluteY="192dp"
android:layout_centerVertical="true"
android:layout_toLeftOf="@+id/sub"
android:layout_toStartOf="@+id/sub"
android:layout_marginRight="52dp"
android:layout_marginEnd="52dp" />

<Button
android:id="@+id/sub"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/editText2"
android:layout_toEndOf="@+id/editText2"
android:layout_toRightOf="@+id/editText2"
android:text="Sub"
android:onClick="sub"/>

<Button
android:id="@+id/mul"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/div"
android:layout_alignBottom="@+id/div"
android:layout_alignLeft="@+id/button"
android:layout_alignStart="@+id/button"
android:text="Mul"

PES 19 | P a g e
android:onClick="mul" />

<Button
android:id="@+id/div"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignEnd="@+id/sub"
android:layout_alignRight="@+id/sub"
android:layout_below="@+id/sub"
android:layout_marginTop="23dp"
android:text="Div"
android:onClick="div" />
</RelativeLayout>
package com.example.siri.calc;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle; import android.view.View;

import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState)
{ super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void add(View v)
{
int num1, num2,sum;
EditText t1 = (EditText)findViewById(R.id.editText);
EditText t2 = (EditText)findViewById(R.id.editText2);
TextView t3 = (TextView)findViewById(R.id.result);
num1 = Integer.parseInt(t1.getText().toString()); num2 =
Integer.parseInt(t2.getText().toString()); sum = num1 +
num2;
t3.setText(Integer.toString(sum));
}
public void sub(View v)
{

PES 20 | P a g e
int num1, num2,sum;
EditText t1 = (EditText)findViewById(R.id.editText);
EditText t2 = (EditText)findViewById(R.id.editText2);
TextView t3 = (TextView)findViewById(R.id.result);
num1 = Integer.parseInt(t1.getText().toString()); num2 =
Integer.parseInt(t2.getText().toString()); sum = num1 -
num2;
t3.setText(Integer.toString(sum));
}
public void mul(View v)
{
int num1, num2,sum;
EditText t1 = (EditText)findViewById(R.id.editText);
EditText t2 = (EditText)findViewById(R.id.editText2);
TextView t3 = (TextView)findViewById(R.id.result);
num1 = Integer.parseInt(t1.getText().toString()); num2 =
Integer.parseInt(t2.getText().toString()); sum = num1 *
num2;
t3.setText(Integer.toString(sum));
}
public void div(View v)
{
int num1, num2,sum;
EditText t1 = (EditText)findViewById(R.id.editText);
EditText t2 = (EditText)findViewById(R.id.editText2);
TextView t3 = (TextView)findViewById(R.id.result);
num1 = Integer.parseInt(t1.getText().toString()); num2 =
Integer.parseInt(t2.getText().toString()); sum = num1 /
num2;
t3.setText(Integer.toString(sum));
}
}

PES 21 | P a g e
OUTPUT:-

PES 22 | P a g e
PROGRAM 4:-
Devise an application that draws basic graphical primitives(rectangle,
circle)on the screen.

XML Code

<ImageView
android:id="@+id/imageView_graphics"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_marginTop="13dp" />

protected void onCreate(Bundle savedInstanceState) {


super.onCreate(savedInstanceState);
setContentView(R.layout.activity_graphical_operation);
Bitmap bg= Bitmap.createBitmap(720,1280,Bitmap.Config.ARGB_8888);
ImageView I= (ImageView)findViewById(R.id.imageView_graphics);
I.setBackgroundDrawable(new BitmapDrawable(bg));

Canvas canvas = new Canvas(bg);


Paint paint = new Paint();
paint.setColor(Color.BLUE);
paint.setTextSize(50);
canvas.drawText("Rectangle", 420, 150, paint);
canvas.drawRect(400, 200, 650, 700, paint);
paint.setColor(Color.RED);
canvas.drawText("Circle", 120, 150, paint);
canvas.drawCircle(200, 350, 150, paint);
paint.setColor(Color.GREEN);
canvas.drawText("Square", 120, 800, paint);
canvas.drawRect(50, 850, 350, 1150, paint);
paint.setColor(Color.BLACK);
canvas.drawText("Line", 480, 800, paint);
canvas.drawLine(520, 850, 520, 1150, paint);

PES 23 | P a g e
OUTPUT:-

PES 24 | P a g e
PROGRAM 5:-
Build an mobile application that create, save, update and delete data in
database.

Main Activity.java

import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends AppCompatActivity implements


android.view.View.OnClickListener{

EditText Rollno,Name,Marks;
Button Insert,Delete,Update,View,ViewAll;
SQLiteDatabase db;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Rollno=(EditText)findViewById(R.id.Rollno);
Name=(EditText)findViewById(R.id.Name);
Marks=(EditText)findViewById(R.id.Marks);
Insert=(Button)findViewById(R.id.Insert);
Delete=(Button)findViewById(R.id.Delete);
Update=(Button)findViewById(R.id.Update);
View=(Button)findViewById(R.id.View);
ViewAll=(Button)findViewById(R.id.ViewAll);
Insert.setOnClickListener(this);
Delete.setOnClickListener(this);
Update.setOnClickListener(this);
View.setOnClickListener(this);
ViewAll.setOnClickListener(this);
db=openOrCreateDatabase("StudentDB", Context.MODE_PRIVATE, null);
db.execSQL("CREATE TABLE IF NOT EXISTS student(rollno
VARCHAR,name VARCHAR," +
"marks VARCHAR);");

PES 25 | P a g e
}
public void onClick(View view)
{
if(view==Insert)
{
if(Rollno.getText().toString().trim().length()==0||
Name.getText().toString().trim().length()==0||
Marks.getText().toString().trim().length()==0)
{
showMessage("Error", "Please enter all values");
return;
}
db.execSQL("INSERT INTO student
VALUES('"+Rollno.getText()+"','"+Name.getText()+
"','"+Marks.getText()+"');");
showMessage("Success", "Record added");
clearText();
}
if(view==Delete)
{

if(Rollno.getText().toString().trim().length()==0)
{
showMessage("Error", "Please enter Rollno");
return;
}

Cursor c=db.rawQuery("SELECT * FROM student WHERE


rollno='"+Rollno.getText()+"'", null);
if(c.moveToFirst())
{
db.execSQL("DELETE FROM student WHERE rollno='"+Rollno.getText()+"'");
showMessage("Success", "Record Deleted");
}
else
{
showMessage("Error", "Invalid Rollno");
}
clearText();
}
if(view==Update)
{
if(Rollno.getText().toString().trim().length()==0)
{
showMessage("Error", "Please enter Rollno");

PES 26 | P a g e
return;
}
Cursor c=db.rawQuery("SELECT * FROM student WHERE
rollno='"+Rollno.getText()+"'", null);
if(c.moveToFirst()) {
db.execSQL("UPDATE student SET name='" + Name.getText() + "',marks='" +
Marks.getText() +
"' WHERE rollno='"+Rollno.getText()+"'");
showMessage("Success", "Record Modified");
}
else {
showMessage("Error", "Invalid Rollno");
}
clearText();
}
if(view==View)
{
if(Rollno.getText().toString().trim().length()==0)
{
showMessage("Error", "Please enter Rollno");
return;
}
Cursor c=db.rawQuery("SELECT * FROM student WHERE
rollno='"+Rollno.getText()+"'", null);
if(c.moveToFirst())
{
Name.setText(c.getString(1));
Marks.setText(c.getString(2));
}

else
{
showMessage("Error", "Invalid Rollno");
clearText();
}
}
if(view==ViewAll)
{
Cursor c=db.rawQuery("SELECT * FROM student", null);
if(c.getCount()==0)
{
showMessage("Error", "No records found");
return;
}
StringBuffer buffer=new StringBuffer();
while(c.moveToNext())

PES 27 | P a g e
{
buffer.append("Rollno: "+c.getString(0)+"\n");
buffer.append("Name: "+c.getString(1)+"\n");
buffer.append("Marks: "+c.getString(2)+"\n\n");
}
showMessage("Student Details", buffer.toString());
}
}
public void showMessage(String title,String message)
{

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


builder.setCancelable(true);
builder.setTitle(title);
builder.setMessage(message);
builder.show();
}
public void clearText()
{
Rollno.setText("");
Name.setText("");
Marks.setText("");
Rollno.requestFocus();
}

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

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="50dp"
android:layout_y="20dp"
android:text="Student Details"
android:textSize="30sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="20dp"
android:layout_y="110dp"

PES 28 | P a g e
android:text="Enter Rollno:"
android:textSize="20sp" />
<EditText
android:id="@+id/Rollno"
android:layout_width="150dp"
android:layout_height="wrap_content"
android:layout_x="175dp"
android:layout_y="100dp"
android:inputType="number"
android:textSize="20sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="20dp"
android:layout_y="160dp"
android:text="Enter Name:"
android:textSize="20sp" />
<EditText
android:id="@+id/Name"
android:layout_width="150dp"
android:layout_height="wrap_content"
android:layout_x="175dp"
android:layout_y="150dp"
android:inputType="text"
android:textSize="20sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="20dp"
android:layout_y="210dp"
android:text="Enter Marks:"
android:textSize="20sp" />
<EditText
android:id="@+id/Marks"
android:layout_width="150dp"
android:layout_height="wrap_content"
android:layout_x="175dp"
android:layout_y="200dp"
android:inputType="number"
android:textSize="20sp" />
<Button
android:id="@+id/Insert"
android:layout_width="150dp"
android:layout_height="wrap_content"
android:layout_x="25dp"
android:layout_y="300dp"

PES 29 | P a g e
android:text="Insert"
android:textSize="30dp" />
<Button
android:id="@+id/Delete"
android:layout_width="150dp"
android:layout_height="wrap_content"
android:layout_x="200dp"
android:layout_y="300dp"
android:text="Delete"
android:textSize="30dp" />
<Button
android:id="@+id/Update"
android:layout_width="150dp"
android:layout_height="wrap_content"
android:layout_x="25dp"
android:layout_y="400dp"
android:text="Update"
android:textSize="30dp" />
<Button
android:id="@+id/View"
android:layout_width="150dp"
android:layout_height="wrap_content"
android:layout_x="200dp"
android:layout_y="400dp"
android:text="View"
android:textSize="30dp" />
<Button
android:id="@+id/ViewAll"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_x="100dp"
android:layout_y="500dp"
android:text="View All"
android:textSize="30dp" />
</AbsoluteLayout>

PES 30 | P a g e
OUTPUT:-

PES 31 | P a g e
PROGRAM 6:-
Devise an application that implements Multi threading.

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle; import
android.view.View;
import android.widget.Button;
import android.widget.ImageView;
public class MainActivity extends AppCompatActivity
{ ImageView img;
Button bt1,bt2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

bt1 = (Button)findViewById(R.id.button);
bt2= (Button) findViewById(R.id.button2);
img = (ImageView)findViewById(R.id.imageView);
bt1.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
new Thread(new Runnable()
{
@Override
public void run()
{
img.post(new Runnable()
{
@Override
public void run()
{
img.setImageResource(R.drawable.india);
}
});
}
}).start();
}
});

bt2.setOnClickListener(new View.OnClickListener()
{
@Override

PES 32 | P a g e
public void onClick(View v)
{
new Thread(new Runnable()
{
@Override
public void run()
{
img.post(new Runnable()
{
@Override
public void run()
{
img.setImageResource(R.drawable.karnataka1);
}
});
}
}).start();
}
});

}
}

.XML file
<?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" android:orientation="vertical" >

<ImageView
android:id="@+id/imageView"
android:layout_width="250dp"
android:layout_height="250dp"
android:layout_margin="50dp"
android:layout_gravity="center" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:layout_gravity="center"
android:text="Load Image 1" />

PES 33 | P a g e
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:layout_gravity="center"
android:text="Load image 2" />
</LinearLayout>

Note: : Before Running the Application, Copy the 2 Images(India & Karnataka) and
Paste it in “app -> res -> drawable” by pressing “right click mouse button on drawable”
and selecting the “Paste” option.

OUTPUT:-

PES 34 | P a g e
PROGRAM 7:-

Develop a mobile application that uses GPS location information.

public void openMap(View v) {


String loc="bangalore";
Uri u = Uri.parse(“http://maps.google.com/maps?&q=” +loc);
Intent i = new Intent(Intent.ACTION_VIEW, u);
startActivity(i);
}

OUTPUT:-

PES 35 | P a g e
PROGRAM 8:-

Create an application that writes data to the SD card.


Activity_main.java

import android.os.Environment;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle; import
android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;

public class MainActivity extends AppCompatActivity {

EditText inputText;
TextView response;
Button saveButton,readButton;

private String filename = "SampleFile.txt";


private String filepath = "MyFileStorage";
File myExternalFile;
String myData = "";

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

inputText = (EditText) findViewById(R.id.myInputText);


response = (TextView) findViewById(R.id.response);

saveButton =
(Button) findViewById(R.id.saveExternalStorage);
saveButton.setOnClickListener(new View.OnClickListener() {
@Override

PES 36 | P a g e
public void onClick(View v) {
try {
FileOutputStream fos = new
FileOutputStream(myExternalFile);
fos.write(inputText.getText().toString().getBytes()); fos.close();
} catch (IOException e)
{ e.printStackTrace();
}
inputText.setText("");
response.setText("SampleFile.txt saved to External Storage...");
}
});

readButton = (Button) findViewById(R.id.getExternalStorage);


readButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
FileInputStream fis = new FileInputStream(myExternalFile);
DataInputStream in = new DataInputStream(fis);
BufferedReader br =
new BufferedReader(new InputStreamReader(in));
String strLine;
while ((strLine = br.readLine()) != null) {
myData = myData+" "+strLine;
}
in.close();
} catch (IOException e) {
e.printStackTrace();
}
inputText.setText(myData);

response.setText("SampleFile.txt data retrieved from External Storage...");

}
});

if (!isExternalStorageAvailable() || isExternalStorageReadOnly())
{ saveButton.setEnabled(false);
}
else {
myExternalFile = new File(getExternalFilesDir(filepath), filename);
}

}
private static boolean isExternalStorageReadOnly() {

PES 37 | P a g e
String extStorageState = Environment.getExternalStorageState();
if (Environment.MEDIA_MOUNTED_READ_ONLY.equals(extStorageState))
{ return true;
}
return false;
}

private static boolean isExternalStorageAvailable() {


String extStorageState = Environment.getExternalStorageState(); if
(Environment.MEDIA_MOUNTED.equals(extStorageState)) {
return true;
}
return false;
}

}
activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:orientation="vertical">

<TextView android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Reading and Writing to External Storage"
android:textSize="24sp"/>

<EditText android:id="@+id/myInputText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10" android:lines="5"
android:minLines="3" android:gravity="top|left"
android:inputType="textMultiLine">

<requestFocus />
</EditText>

<LinearLayout
android:layout_width="match_parent" android:layout_height="wrap_content"
android:orientation="horizontal"
android:weightSum="1.0"
android:layout_marginTop="20dp">

<Button
android:id="@+id/saveExternalStorage"

PES 38 | P a g e
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:text="WRITE DATA" />

<Button
android:id="@+id/getExternalStorage"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:text="READ DATA" />

</LinearLayout>

<TextView android:id="@+id/response"
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:padding="5dp"
android:text=""
android:textAppearance="?android:attr/textAppearanceMedium" />

</LinearLayout>
OUTPUT:-

PES 39 | P a g e
PROGRAM 9:-
Implement an application that creates an alert upon receiving message.

<?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"
android:layout_margin="10dp"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Message"
android:textSize="30sp" />
<EditText
android:id="@+id/editText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:singleLine="true"
android:textSize="30sp" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="30dp"
android:layout_gravity="center"
android:text="Notify"
android:textSize="30sp"/>
</LinearLayout>
Code for MainActivity.java:

import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View; import
android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity
{
Button notify;
EditText e;
@Override

PES 40 | P a g e
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); notify=
(Button) findViewById(R.id.button); e= (EditText)
findViewById(R.id.editText);
notify.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
PendingIntent pending = PendingIntent.getActivity(MainActivity.this, 0, intent, 0);
Notification noti = new Notification.Builder(MainActivity.this).setContentTitle("New
Message").setContentText
(e.getText().toString()).setSmallIcon(R.mipmap.ic_launcher).setContentIntent(pending).build();
NotificationManager manager = (NotificationManager)
getSystemService(NOTIFICATION_SERVICE);
noti.flags |= Notification.FLAG_AUTO_CANCEL;
manager.notify(0, noti);
}
});
}
}

OUTPUT:-

PES 41 | P a g e
PROGRAM 10:-
Device a mobile application that creates alarm clock.

Code for Activity_main.xml

<?xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">

<TimePicker
android:id="@+id/timePicker"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"/>

<ToggleButton
android:id="@+id/toggleButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_margin="20dp"
android:checked="false"
android:onClick="OnToggleClicked"/>

</LinearLayout>
Changes in Manifest for the Android Application:
▪ Click on app -> manifests -> AndroidManifest.xml

▪ Now change the activity tag to receiver tag in the AndroidManifest.xml file as
shown below

Code for AndroidManifest.xml:


<?xmlversion="1.0"encoding="utf-8"?>
<manifestxmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.exno11">

<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activityandroid:name=".MainActivity">
<intent-filter>
<actionandroid:name="android.intent.action.MAIN"/>

<categoryandroid:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<receiverandroid:name=".AlarmReceiver">
</receiver>
</application>

</manifest>

Code for MainActivity.java


Import android.app.AlarmManager;
Import android.app.PendingIntent;
Import android.content.Intent;
Import android.os.Bundle;
Import android.support.v7.app.AppCompatActivity;
Import android.view.View;
Import android.widget.TimePicker;
Import android.widget.Toast;
Import android.widget.ToggleButton;

Import java.util.Calendar;

Public class MainActivity extends AppCompatActivity


{
TimePickeralarmTimePicker;
PendingIntentpendingIntent;
AlarmManageralarmManager;

@Override
protectedvoidonCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
alarmTimePicker = (TimePicker) findViewById(R.id.timePicker);
alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
}
publicvoidOnToggleClicked(View view)
{
longtime;
if(((ToggleButton) view).isChecked())
{
Toast.makeText(MainActivity.this, "ALARM ON", Toast.LENGTH_SHORT).show();
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, alarmTimePicker.getCurrentHour());
calendar.set(Calendar.MINUTE, alarmTimePicker.getCurrentMinute());
Intent intent = newIntent(this, AlarmReceiver.class);
pendingIntent = PendingIntent.getBroadcast(this, 0, intent, 0);

time=(calendar.getTimeInMillis()-(calendar.getTimeInMillis()%60000));
if(System.currentTimeMillis()>time) {
if(calendar.AM_PM == 0)
time = time + (1000*60*60*12);
else
time = time + (1000*60*60*24);
}
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, time,
10000, pendingIntent);
}
else
{
alarmManager.cancel(pendingIntent);
Toast.makeText(MainActivity.this, "ALARM OFF", Toast.LENGTH_SHORT).show();
}
}
}
Java Coding for Alarm Receiver:
Click on app -> java -> com.example.exno11 ->AlarmReceiver.
Then delete the code which is there and type the code as given below.

Code for AlarmReceiver.java:

Import android.content.BroadcastReceiver;
Import android.content.Context;
Import android.content.Intent;
Import android.media.Ringtone;
Import android.media.RingtoneManager;
Import android.net.Uri;
Import android.widget.Toast;

publicclassAlarmReceiver extendsBroadcastReceiver
{
@Override
publicvoidonReceive(Context context, Intent intent)
{
Toast.makeText(context, "Alarm! Wake up! Wake up!",Toast.LENGTH_LONG).show();
Uri alarmUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM);
if(alarmUri == null)
{
alarmUri =
RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
}
Ringtone ringtone = RingtoneManager.getRingtone(context,
alarmUri); ringtone.play();
}
}
OUTPUT:-

You might also like