You are on page 1of 60

Practical No.

20
X] Q. 1
1. MANIFEST FILE
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>

2. XML FILE

<?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" >

<Button

android:id="@+id/button1"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_alignParentLeft="true"

android:layout_alignParentTop="true"

android:layout_marginLeft="141dp"

android:layout_marginTop="140dp"

android:text="Enable Wifi" />

<Button

android:id="@+id/button2"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_below="@+id/button1"

android:layout_alignLeft="@+id/button1"

android:layout_marginLeft="-1dp"
android:layout_marginTop="20dp"

android:text="Disable Wifi" />

<TextView

android:layout_width="417dp"

android:layout_height="70dp"

android:layout_alignParentBottom="true"

android:layout_marginBottom="363dp"

android:gravity="center"

android:text="-Atharv Potdar"

android:textColor="@color/purple_700"

android:textSize="20dp"

android:textStyle="bold"

tools:layout_editor_absoluteX="-67dp" />

</RelativeLayout>

3. JAVA FILE

package com.example.prac20qu1re;

import android.net.wifi.WifiManager;

import android.os.Bundle;

import android.app.Activity;

import android.content.Context;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

public class MainActivity extends Activity {

Button enableButton,disableButton;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

enableButton=(Button)findViewById(R.id.button1);

disableButton=(Button)findViewById(R.id.button2);

enableButton.setOnClickListener(new OnClickListener(){

public void onClick(View v){

WifiManager wifi = (WifiManager)


getApplicationContext().getSystemService(Context.WIFI_SERVICE);

wifi.setWifiEnabled(true);

});

disableButton.setOnClickListener(new OnClickListener(){

public void onClick(View v){

WifiManager wifi = (WifiManager)


getApplicationContext().getSystemService(Context.WIFI_SERVICE);

wifi.setWifiEnabled(false);

});

}
Q. 2

1. XML FILE

<?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"

android:padding="16dp"

tools:context=".MainActivity">

<Button

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:layout_marginTop="150dp"

android:onClick="startService"

android:text="Start Service" />

<Button

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="Stop Service"

android:onClick="stopService"/>

<TextView

android:layout_width="417dp"

android:layout_height="70dp"

android:layout_alignParentBottom="true"

android:layout_marginBottom="363dp"

android:gravity="center"

android:text="-Atharv Potdar"

android:textColor="@color/purple_700"

android:textSize="20dp"
android:textStyle="bold"

tools:layout_editor_absoluteX="-67dp" />

</LinearLayout>

2. MYSERVICE.JAVA

package com.example.prac20qu2;

import android.app.Service;

import android.content.Intent;

import android.os.IBinder;

import android.widget.Toast;

public class MyService extends Service {

public MyService() {

@Override

public IBinder onBind(Intent intent) {

return null;

@Override

public int onStartCommand(Intent intent, int flags, int startId) {

Toast.makeText(this, "Service started", Toast.LENGTH_SHORT).show();

return START_STICKY;

@Override

public void onDestroy() {

super.onDestroy();

Toast.makeText(this, "Service stopped", Toast.LENGTH_SHORT).show();


}

3. JAVA FILE

package com.example.prac20qu2;

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.widget.Toast;

import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

public void startService(View view) {

Intent serviceIntent = new Intent(this, MyService.class);

startService(serviceIntent);

Toast.makeText(this, "Service started", Toast.LENGTH_SHORT).show();

public void stopService(View view) {

Intent serviceIntent = new Intent(this, MyService.class);

stopService(serviceIntent);

Toast.makeText(this, "Service stopped", Toast.LENGTH_SHORT).show();


}

}
Practical No. 23
Q.2
1. XML FILE
MAIN_ACTIVITY.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"
android:gravity="center">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Capture Video"
android:onClick="captureVideo"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Play Video"
android:onClick="playVideo"
android:layout_marginTop="16dp"/>
<TextView
android:layout_width="417dp"
android:layout_height="70dp"
android:layout_alignParentBottom="true"
android:layout_marginBottom="363dp"
android:gravity="center"
android:text="-Atharv Potdar"
android:textColor="@color/purple_700"
android:textSize="20dp"
android:textStyle="bold"
tools:layout_editor_absoluteX="-67dp" />
</LinearLayout>

VIDEO_PLAY.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=".VideoPlayActivity">
<VideoView
android:id="@+id/videoView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</RelativeLayout>

2. JAVA FILE
MAIN_ACTIVITY.JAVA
package com.example.prac23qu2;

import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.provider.MediaStore;
import android.view.View;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

private static final int VIDEO_REQUEST = 101;


private Uri videoUri = null;

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

public void captureVideo(View view) {


Intent videoIntent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
if (videoIntent.resolveActivity(getPackageManager()) != null) {
startActivityForResult(videoIntent, VIDEO_REQUEST);
}
}

public void playVideo(View view) {


if (videoUri != null) {
Intent playIntent = new Intent(this, VideoPlayActivity.class);
playIntent.putExtra("videoUri", videoUri.toString());
startActivity(playIntent);
} else {
Toast.makeText(this, "Please capture a video first", Toast.LENGTH_SHORT).show();
}
}

@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == VIDEO_REQUEST && resultCode == RESULT_OK) {
videoUri = data.getData();
}
}
}

VIDEO_PLAY.JAVA
package com.example.prac23qu2;

import androidx.appcompat.app.AppCompatActivity;

import android.net.Uri;
import android.os.Bundle;
import android.widget.VideoView;

public class VideoPlayActivity extends AppCompatActivity {

private VideoView mVideoView;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_video_play);
mVideoView = findViewById(R.id.videoView);
String videoUriString = getIntent().getStringExtra("videoUri");
if (videoUriString != null) {
Uri videoUri = Uri.parse(videoUriString);
mVideoView.setVideoURI(videoUri);
mVideoView.start();
}
}
}
Practical No. 25
X] Q.1
1. XML FILE
<?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"
android:padding="16dp"
tools:context=".MainActivity">
<ImageView
android:id="@+id/imageView"
android:layout_width="200dp"
android:layout_height="200dp"
android:layout_centerInParent="true"
android:alpha="1.0"
android:scaleType="centerCrop"
android:src="@drawable/image1" />
<Button
android:id="@+id/rotateClockwiseBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/imageView"
android:layout_marginTop="16dp"
android:text="Rotate Clockwise"
android:onClick="rotateClockwise"/>
<Button
android:id="@+id/rotateAntiClockwiseBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/rotateClockwiseBtn"
android:layout_below="@id/imageView"
android:layout_marginStart="16dp"
android:text="Rotate Anti-clockwise"
android:onClick="rotateAntiClockwise"/>
<Button
android:id="@+id/zoomInBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/rotateClockwiseBtn"
android:layout_marginTop="16dp"
android:text="Zoom In"
android:onClick="zoomIn"/>
<Button
android:id="@+id/zoomOutBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/zoomInBtn"
android:layout_below="@id/rotateClockwiseBtn"
android:layout_marginStart="16dp"
android:text="Zoom Out"
android:onClick="zoomOut"/>
<Button
android:id="@+id/fadeOutBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/zoomInBtn"
android:layout_marginTop="16dp"
android:text="Fade Out"
android:onClick="fadeOut"/>
<Button
android:id="@+id/fadeInBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/fadeOutBtn"
android:layout_below="@id/zoomInBtn"
android:layout_marginStart="16dp"
android:text="Fade In"
android:onClick="fadeIn"/>
<TextView
android:layout_width="417dp"
android:layout_height="70dp"
android:layout_alignParentBottom="true"
android:layout_marginBottom="546dp"
android:gravity="center"
android:text="-Atharv Potdar"
android:textColor="@color/purple_700"
android:textSize="20dp"
android:textStyle="bold"
tools:layout_editor_absoluteX="-67dp" />
</RelativeLayout>
2. JAVA FILE
package com.example.prac25qu1;

import android.annotation.SuppressLint;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

private ImageView imageView;


private float currentRotation = 0;
private float currentScale = 1;
private boolean isFaded = false;

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

imageView = findViewById(R.id.imageView);
}

public void rotateClockwise(View view) {


currentRotation += 90;
imageView.setRotation(currentRotation);
}
public void rotateAntiClockwise(View view) {
currentRotation -= 90;
imageView.setRotation(currentRotation);
}

public void zoomIn(View view) {


currentScale += 0.1f;
imageView.setScaleX(currentScale);
imageView.setScaleY(currentScale);
}

public void zoomOut(View view) {


currentScale -= 0.1f;
imageView.setScaleX(currentScale);
imageView.setScaleY(currentScale);
}

public void fadeOut(View view) {


if (!isFaded) {
imageView.animate().alpha(0.0f).setDuration(1000);
isFaded = true;
}
}

public void fadeIn(View view) {


if (isFaded) {
imageView.animate().alpha(1.0f).setDuration(1000);
isFaded = false;
}
}
}
Practical No. 26
Q. 1
X. XML FILE
<?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/editTextRecordNum"
android:layout_width="318dp"
android:layout_height="50dp"
android:layout_marginStart="44dp"
android:layout_marginTop="124dp"
android:ems="10"
android:inputType="number"
android:singleLine="true"
android:textColor="#000000"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />

<Button
android:id="@+id/buttonNormalInsert"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="44dp"
android:layout_marginTop="44dp"
android:text="Normal Insert"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/editTextRecordNum" />

<Button
android:id="@+id/buttonFastInsert"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="44dp"
android:layout_marginEnd="48dp"
android:text="Fast Insert"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/editTextRecordNum" />

<TextView
android:id="@+id/textViewStatus"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dp"
android:text="Status"
android:textColor="#000000"
android:textSize="18sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/buttonNormalInsert" />

<TextView
android:layout_width="417dp"
android:layout_height="70dp"
android:layout_alignParentBottom="true"
android:gravity="center"
android:text="-Atharv Potdar"
android:textColor="@color/purple_700"
android:textSize="20dp"
android:textStyle="bold"
tools:layout_editor_absoluteX="0dp"
tools:layout_editor_absoluteY="16dp" />

</androidx.constraintlayout.widget.ConstraintLayout>

2. JAVA FILE
MAIN_ACTIVITY.JAVA
package com.example.prac26qu1;

import android.app.Activity;
import android.os.AsyncTask;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends Activity {


EditText editTextRecordNum;
TextView tvStatus;

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

editTextRecordNum = findViewById(R.id.editTextRecordNum);
tvStatus = findViewById(R.id.textViewStatus);

Button buttonNormalInsert = findViewById(R.id.buttonNormalInsert);


Button buttonFastInsert = findViewById(R.id.buttonFastInsert);

buttonNormalInsert.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new AsyncInsertData("normal").execute();
}
});

buttonFastInsert.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new AsyncInsertData("fast").execute();
}
});
}

class AsyncInsertData extends AsyncTask<Void, Void, Void> {


String type;
long timeElapsed;
AsyncInsertData(String type) {
this.type = type;
}

@Override
protected void onPreExecute() {
super.onPreExecute();
tvStatus.setText("Inserting " + editTextRecordNum.getText() + " records...");
}

@Override
protected Void doInBackground(Void... voids) {
try {
int insertCount = Integer.parseInt(editTextRecordNum.getText().toString());
DatabaseHandler databaseHandler = new DatabaseHandler(MainActivity.this);
long lStartTime = System.nanoTime();
if (type.equals("normal")) {
databaseHandler.insertNormal(insertCount);
} else {
databaseHandler.insertFast(insertCount);
}
long lEndTime = System.nanoTime();
timeElapsed = lEndTime - lStartTime;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(Void aVoid) {
super.onPostExecute(aVoid);

tvStatus.setText("Done inserting records. Time elapsed: " + timeElapsed / 1000000 +


" ms.");
}
}
}

DATABASEHANDLER.JAVA
package com.example.prac26qu1;

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

public class DatabaseHandler extends SQLiteOpenHelper {


private static final int DATABASE_VERSION = 1;
private static final String DATABASE_NAME = "NinjaDatabase";

private static final String TABLE_NAME = "locations";


private static final String KEY_ID = "id";
private static final String KEY_NAME = "name";
private static final String KEY_DESCRIPTION = "description";

public DatabaseHandler(Context context) {


super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
String CREATE_TABLE = "CREATE TABLE " + TABLE_NAME + "("
+ KEY_ID + " INTEGER PRIMARY KEY,"
+ KEY_NAME + " TEXT,"
+ KEY_DESCRIPTION + " TEXT" + ")";
db.execSQL(CREATE_TABLE);
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
onCreate(db);
}

public void insertNormal(int insertCount) {


SQLiteDatabase db = this.getWritableDatabase();
for (int i = 0; i < insertCount; i++) {
ContentValues values = new ContentValues();
values.put(KEY_NAME, "Name #" + i);
values.put(KEY_DESCRIPTION, "Description #" + i);
db.insert(TABLE_NAME, null, values);
}
db.close();
}

public void insertFast(int insertCount) {


SQLiteDatabase db = this.getWritableDatabase();
db.beginTransaction();
try {
for (int i = 0; i < insertCount; i++) {
ContentValues values = new ContentValues();
values.put(KEY_NAME, "Name #" + i);
values.put(KEY_DESCRIPTION, "Description #" + i);
db.insert(TABLE_NAME, null, values);
}
db.setTransactionSuccessful();
} finally {
db.endTransaction();
db.close();
}
}
}
Practical No. 27
X] Q.1
1. 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"
android:padding="16dp">
<EditText
android:id="@+id/editTextUsername"
android:layout_width="match_parent"
android:layout_height="60dp"
android:hint="Username"
android:inputType="text"
android:layout_marginTop="200dp"/>
<EditText
android:id="@+id/editTextPassword"
android:layout_width="match_parent"
android:layout_height="60dp"
android:hint="Password"
android:inputType="textPassword" />
<Button
android:layout_marginTop="50dp"
android:id="@+id/buttonLogin"
android:layout_marginStart="140dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Login"
android:textSize="24sp"/>

<TextView
android:layout_width="417dp"
android:layout_height="70dp"
android:layout_alignParentBottom="true"
android:gravity="center"
android:text="-Atharv Potdar"
android:textColor="@color/purple_700"
android:textSize="20dp"
android:textStyle="bold" />
</LinearLayout>

2. JAVA FILE
package com.example.prac27qu1;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

private EditText editTextUsername, editTextPassword;


private Button buttonLogin;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editTextUsername = findViewById(R.id.editTextUsername);
editTextPassword = findViewById(R.id.editTextPassword);
buttonLogin = findViewById(R.id.buttonLogin);
buttonLogin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {

String username = editTextUsername.getText().toString();


String password = editTextPassword.getText().toString();
if (username.equals("Atharv") && password.equals("123@")) {

Toast.makeText(MainActivity.this, "Login successful",


Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(MainActivity.this, "Login Unsuccessful : Invalid username or
password", Toast.LENGTH_SHORT).show();
}
}
});
}
}
Practical No. 28
X] Q.1
1. 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"
android:padding="16dp">
<EditText
android:id="@+id/editTextUsername"
android:layout_width="match_parent"
android:layout_height="60dp"
android:hint="Username"
android:inputType="text"
android:layout_marginTop="200dp"/>
<EditText
android:id="@+id/editTextPassword"
android:layout_width="match_parent"
android:layout_height="60dp"
android:hint="Password"
android:inputType="textPassword" />
<Button
android:layout_marginTop="50dp"
android:id="@+id/buttonLogin"
android:layout_marginStart="140dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Login"
android:textSize="24sp"/>

<TextView
android:layout_width="417dp"
android:layout_height="70dp"
android:layout_alignParentBottom="true"
android:gravity="center"
android:text="-Atharv Potdar"
android:textColor="@color/purple_700"
android:textSize="20dp"
android:textStyle="bold"
/>
</LinearLayout>

2. JAVA FILE
package com.example.prac28qu1;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

private EditText usernameEditText;


private EditText passwordEditText;
private Button loginButton;
private int loginAttempts = 0;
private final int MAX_LOGIN_ATTEMPTS = 3;

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

usernameEditText = findViewById(R.id.editTextUsername);
passwordEditText = findViewById(R.id.editTextPassword);
loginButton = findViewById(R.id.buttonLogin);

loginButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String username = usernameEditText.getText().toString().trim();
String password = passwordEditText.getText().toString().trim();

if (username.isEmpty() || password.isEmpty()) {
showToast("Please enter both username and password.");
return;
}

if (username.length() < 4 || password.length() < 4) {


showToast("Username and password must be at least 4 characters long.");
return;
}
if (!username.equals("Atharva") || !password.equals("123")) {
loginAttempts++;
if (loginAttempts >= MAX_LOGIN_ATTEMPTS) {
showToast("Maximum login attempts reached.");
loginButton.setEnabled(false);
} else {
showToast("Incorrect username or password. Attempts left: " +
(MAX_LOGIN_ATTEMPTS - loginAttempts));
}
} else {
showToast("Login successful!");
}
}
});
}

private void showToast(String message) {


Toast.makeText(this, message, Toast.LENGTH_SHORT).show();
}
}
Practical No. 29
X] Q.1
1. XML FILE

<?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="16dp"
android:gravity="center_horizontal"
tools:context=".MainActivity">

<EditText
android:id="@+id/et_phone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter Phone Number"
android:padding="12dp"
android:maxLength="10"
android:inputType="phone"
android:background="@color/cardview_shadow_start_color"/>

<EditText
android:id="@+id/et_message"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter Message"
android:padding="12dp"
android:minLines="6"
android:inputType="textMultiLine"
android:gravity="top"
android:layout_marginTop="8dp"
android:background="@color/cardview_shadow_start_color"/>

<Button
android:id="@+id/bt_send"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Send SMS"
android:layout_marginTop="32dp"/>
<TextView
android:layout_width="417dp"
android:layout_height="70dp"
android:layout_alignParentBottom="true"
android:gravity="center"
android:text="-Atharv Potdar"
android:textColor="@color/purple_700"
android:textSize="20dp"
android:textStyle="bold"
/>
</LinearLayout>
2. JAVA FILE
package com.example.prac29qu1;

import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;

import android.Manifest;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.telephony.SmsManager;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {


EditText etPhone, etMessage;
Button btSend;

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

etPhone = findViewById(R.id.et_phone);
etMessage = findViewById(R.id.et_message);
btSend = findViewById(R.id.bt_send);
btSend.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (ContextCompat.checkSelfPermission(MainActivity.this,
Manifest.permission.SEND_SMS) == PackageManager.PERMISSION_GRANTED) {
sendMessage();
} else {
ActivityCompat.requestPermissions(MainActivity.this, new
String[]{Manifest.permission.SEND_SMS}, 100);
}
}
});
}

private void sendMessage() {


String sPhone = etPhone.getText().toString().trim();
String sMessage = etMessage.getText().toString().trim();

if (!sPhone.equals("") && !sMessage.equals("")) {


SmsManager smsManager = SmsManager.getDefault();
smsManager.sendTextMessage(sPhone, null, sMessage, null, null);
Toast.makeText(getApplicationContext(), "SMS sent successfully!",
Toast.LENGTH_SHORT).show();
} else {

Toast.makeText(getApplicationContext(), "Enter value first.",


Toast.LENGTH_SHORT).show();
}
}
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions,
@NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);

if (requestCode == 100 && grantResults.length > 0 && grantResults[0] ==


PackageManager.PERMISSION_GRANTED) {
sendMessage();
} else {

Toast.makeText(getApplicationContext(), "Permission Denied!",


Toast.LENGTH_SHORT).show();
}
}

}
Practical No. 30
X] Q.1
1. XML FILE
<?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"
android:padding="16dp"
tools:context=".MainActivity">

<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="To:"
android:textAppearance="@style/TextAppearance.AppCompat.Large" />

<EditText
android:id="@+id/edit_text_to"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress" />

<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Subject:"
android:textAppearance="@style/TextAppearance.AppCompat.Large" />
<EditText
android:id="@+id/edit_text_subject"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress" />

<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Message:"
android:textAppearance="@style/TextAppearance.AppCompat.Large" />

<EditText
android:id="@+id/edit_text_message"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="start|top"
android:lines="10" />
<TextView
android:layout_width="417dp"
android:layout_height="70dp"
android:layout_alignParentBottom="true"
android:gravity="center"
android:text="-Atharv Potdar"
android:textColor="@color/purple_700"
android:textSize="20dp"
android:textStyle="bold" />
<Button
android:layout_marginTop="10dp"
android:id="@+id/button_send"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Send" />
</LinearLayout>

2. JAVA FILE
package com.example.prac30qu1;

import androidx.appcompat.app.AppCompatActivity;

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

public class MainActivity extends AppCompatActivity {

private EditText mEditTextTo, mEditTextSubject, mEditTextMessage;

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

mEditTextTo = findViewById(R.id.edit_text_to);
mEditTextSubject = findViewById(R.id.edit_text_subject);
mEditTextMessage = findViewById(R.id.edit_text_message);

Button buttonSend = findViewById(R.id.button_send);


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

private void sendMail() {


String recipientList = mEditTextTo.getText().toString().trim();
String[] recipients = recipientList.split(",");
String subject = mEditTextSubject.getText().toString().trim();
String message = mEditTextMessage.getText().toString().trim();

Intent intent = new Intent(Intent.ACTION_SEND);


intent.putExtra(Intent.EXTRA_EMAIL, recipients);
intent.putExtra(Intent.EXTRA_SUBJECT, subject);
intent.putExtra(Intent.EXTRA_TEXT, message);
intent.setType("message/rfc822");

startActivity(Intent.createChooser(intent, "Choose an email client"));


}
}
Practical No. 31
X] Q.1
1. XML FILE
<?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=".MapsActivity">
<com.google.android.gms.maps.MapView
android:id="@+id/mapView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true"
android:layout_alignParentEnd="true"
android:layout_alignParentBottom="true"
android:clickable="true"
android:enabled="true" />
</RelativeLayout>

2. JAVA FILE
package com.example.mapsmad;
import androidx.fragment.app.FragmentActivity;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.Manifest;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import com.google.android.gms.location.LocationServices;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.MapView;
import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.MarkerOptions;
import com.google.android.gms.location.FusedLocationProviderClient;
public class MapsActivity extends AppCompatActivity implements OnMapReadyCallback {
private GoogleMap mMap;
private MapView mMapView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maps);
mMapView = findViewById(R.id.mapView);
mMapView.onCreate(savedInstanceState);
mMapView.getMapAsync(this);
}
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
// Check if permission to access location is granted
if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION)
== PackageManager.PERMISSION_GRANTED) {
mMap.setMyLocationEnabled(true);
// Get last known location
FusedLocationProviderClient fusedLocationClient =
LocationServices.getFusedLocationProviderClient(this);
fusedLocationClient.getLastLocation().addOnSuccessListener(this, location -> {
if (location != null) {
// Add marker to map
LatLng currentLocation = new LatLng(location.getLatitude(), location.getLongitude());
mMap.addMarker(new MarkerOptions().position(currentLocation).title("You are here"));
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(currentLocation, 15));
}
});
} else {
// Request permission to access location

ActivityCompat.requestPermissions(this, new
String[]{Manifest.permission.ACCESS_FINE_LOCATION}, 1);
}
}
}
Practical No. 32
X] Q.1
1. XML FILE
<?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"
android:orientation="vertical"
android:gravity="center">
<EditText
android:id="@+id/ed1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:hint="Enter Source"
android:layout_marginBottom="40dp"/>
<EditText
android:id="@+id/ed2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:hint="Enter Source"
android:layout_marginBottom="40dp"/>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Search"/>

</LinearLayout>

2. JAVA FILE
package com.example.practical16;
import android.annotation.SuppressLint;
import android.content.Intent;
import android.net.Uri;
import android.net.wifi.WifiManager;
import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends Activity {
Button search;
EditText ed1,ed2;
@SuppressLint("MissingInflatedId")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ed1 = findViewById(R.id.ed1);
ed2 = findViewById(R.id.ed2);
search=(Button)findViewById(R.id.button1);
search.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
String src = ed1.getText().toString().trim();
String des = ed2.getText().toString().trim();
if(src.equals(" ")||des.equals(" "))
{
Toast.makeText(MainActivity.this, "Enter both locations", Toast.LENGTH_SHORT).show();
}
else
{
Uri uri = Uri.parse("https://www.google.com/maps/dir/"+src+"/"+des);
Intent intent = new Intent(Intent.ACTION_VIEW,uri);
intent.setPackage("com.google.android.apps.maps");
startActivity(intent);
}
}
});}}

You might also like