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

SMS29

The document contains XML code for an AndroidManifest file and activity layout file that define an SMS sending app, as well as Java code for a MainActivity class that implements the SMS sending functionality.

Uploaded by

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

SMS29

The document contains XML code for an AndroidManifest file and activity layout file that define an SMS sending app, as well as Java code for a MainActivity class that implements the SMS sending functionality.

Uploaded by

Ritesh Kolate
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

activity.xml AndroidManifest.

xml

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


<LinearLayout <manifest
xmlns:android="http://schemas.android.com/apk/res/ xmlns:android="http://schemas.android.com/apk/res/android"
android" xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res- package="com.example.smspractical29">
auto"
xmlns:tools="http://schemas.android.com/tools" <!-- Add the permission for sending SMS -->
android:layout_width="match_parent" <uses-feature
android:layout_height="match_parent" android:name="android.hardware.telephony"
android:orientation="vertical" android:required="false" />
android:padding="16dp" <uses-permission
android:gravity="center_horizontal" android:name="android.permission.SEND_SMS" />
tools:context=".MainActivity">
<application
<EditText android:allowBackup="true"
android:id="@+id/et_phone" android:dataExtractionRules="@xml/data_extraction_rules"
android:layout_width="match_parent" android:fullBackupContent="@xml/backup_rules"
android:layout_height="wrap_content" android:icon="@mipmap/ic_launcher"
android:hint="Enter Phone Number" android:label="@string/app_name"
android:padding="12dp" android:roundIcon="@mipmap/ic_launcher_round"
android:maxLength="10" android:supportsRtl="true"
android:inputType="phone" android:theme="@style/Theme.SMSPRACTICAL29"
/> tools:targetApi="31">
<EditText <activity
android:id="@+id/et_message" android:name=".MainActivity"
android:layout_width="match_parent" android:exported="true">
android:layout_height="wrap_content" <intent-filter>
android:hint="Enter Message" <action android:name="android.intent.action.MAIN" />
android:padding="12dp"
android:minLines="6" <category
android:inputType="textMultiLine" android:name="android.intent.category.LAUNCHER" />
android:gravity="top" </intent-filter>
android:layout_marginTop="8dp"/> </activity>
<Button </application>
android:id="@+id/bt_send"
android:layout_width="wrap_content" </manifest>
android:layout_height="wrap_content"
android:text="Send SMS"
android:layout_marginTop="32dp"/>
</LinearLayout>
MainActivity.java
package com.example.smspractical29;

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import androidx.annotation.NonNull;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import android.Manifest;
import android.content.pm.PackageManager;
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();
}
}
}

You might also like