خانه اندروید

800 ساعت آموزش اختصاصی

بیش از 30 هزار دانشجو

آموزش های پروژه محور

مطالب پیشنهادی حتما مشاهده کنید :

فیلم آموزش ارسال پیامک sms اندروید استودیو Android Studio

فیلم آموزش ارسال پیامک sms اندروید استودیو Android Studio

فیلم آموزش ارسال پیامک sms اندروید استودیو Android Studio

آموزش ارسال اس ام اس android studio sms

 ارسال پیامک sms ، عرض سلام خدمت کاربران گرامی خانه اندروید قصد داریم در این آموزش از سری آموزش اندروید استودیو به مبحث ارسال پیامک sms بپردازیم و یاداوری می کنیم که اگر شما نمی خواهید سورس کد رو مطالعه کنید کافی است انتهای پست فیلم آموزشی این قسمت رو دانلود کنید.توی اموزش قبل اومدیم تماس تلفنی رو خدمتون آموزش دادیم که می توانید از لینک زیر مشاهده کنید.

پیشنهاد ویژه :فیلم آموزشی تماس تلفنی اندروید استودیو ACTION_DIAL

بی مقدمه میریم سراغ آموزش  ارسال پیامک sms :

پروژه جدیدی را استارت کنید سپس دو تا EditText و یک دکمه روی اکتیویتی خودتون قرار بدید و برای هرکدام ایدی را مشخص کنید چون قراره در سورس کد جاوا ازشون استفاده کنیم.اما چرا دو تا EditText  ؟ زیرا  قراره  شماره همراه و پیغام شخص رو دریافت کنیم و بفرستیم به صفحه Default  ارسال پیامک sms و کاربر می تواند با ارسال دکمه send خودش این پیغام رو بفرسته.

سورس کد بخش xml :

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:tools="https://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.app.homeandroidir.sendsms.MainActivity"
    android:orientation="vertical">


    <EditText
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:id="@+id/Edittxt_smg_numer"/>

    <EditText
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:id="@+id/Edittxt_messag"/>

    <Button
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:id="@+id/Btn_sendsms"
        android:text="ارسال sms"/>
</LinearLayout>

دیزاین کلی برنامه  ارسال پیامک sms :

فیلم آموزش ارسال پیامک sms اندروید استودیو Android Studio

و سورس کد بخش جاوا  Mainactivity :

package com.app.homeandroidir.sendsms;

import android.content.Intent;
import android.net.Uri;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {
    Button btnsms;
    EditText Edit_txt_number,Edit_txt_messg;

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

        btnsms.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                String number= Edit_txt_number.getText().toString();
                  String msg=Edit_txt_messg.getText().toString();
                if (!TextUtils.isEmpty(number) &&!TextUtils.isEmpty(number) )
                {
                    Uri uri =Uri.parse("smsto:"+number);
                    Intent i = new Intent(Intent.ACTION_SENDTO,uri);
                    i.putExtra("sms_body",msg);
                    startActivity(i);
                    Toast.makeText(MainActivity.this, "لطفا کمی صبر کنید...", Toast.LENGTH_SHORT).show();
                }
                else
                {
                    Toast.makeText(MainActivity.this, "لطفا شماره همراه و متن پیام را وارد کنید.", Toast.LENGTH_SHORT).show();
                }
            }
        });

    }

    void cast()
    {
        btnsms = (Button) findViewById(R.id.Btn_sendsms);
        Edit_txt_number = (EditText) findViewById(R.id.Edittxt_smg_numer);
        Edit_txt_messg = (EditText) findViewById(R.id.Edittxt_messag);
    }
}

توضیح سورس کد بخش جاوا :

تعریف دو متغییر از نوع رشته برای دریافت شماره همراه و پیغام شخص مورد نظر :

 String number= Edit_txt_number.getText().toString();
                  String msg=Edit_txt_messg.getText().toString();

چک می کنیم کاربر حتما و حتما شماره همراه و پیغام خودش رو وارد کند و اگر وارد نکرده بود در بخش else یا به معنی در غیر این صورت پیغام مورد نظر رو می دهیم :

 if (!TextUtils.isEmpty(number) &&!TextUtils.isEmpty(number) )

دستور ارسال sms در اندروید استودیو که قبلا اومدیم تماس تلفنی رو آموزش دادیم و این بخش کمی برای دوستان ممکن است تکرار باشد :

 Uri uri =Uri.parse("smsto:"+number);
                    Intent i = new Intent(Intent.ACTION_SENDTO,uri);
                    i.putExtra("sms_body",msg);
                    startActivity(i);
                    Toast.makeText(MainActivity.this, "لطفا کمی صبر کنید...", Toast.LENGTH_SHORT).show();

گرفتن شماره همراه کاربر و حتما باید smsto را قرار دهید :

 Uri uri =Uri.parse("smsto:"+number);

برای رفتن به اکتیویتی دیگر نیاز هست که از Intent استفاده کنیم ولی چرا به اکتیویتی دیگر می رویم به خاطر ارسال ام اس اس هست پس باید در بخش ACTION_SENDTO بنویسیم.

 Intent i = new Intent(Intent.ACTION_SENDTO,uri);

برای ارسال پیغام شخص حتما باید دستور putExtera را قرار دهیم :

 i.putExtra("sms_body",msg);

و در آخر استارت اکتیویتی و پاس دادن شی Intent به استارت اکتیویتی و در نهایت پیغام لطفا کمی صبر کنید:

 startActivity(i);
                    Toast.makeText(MainActivity.this, "لطفا کمی صبر کنید...", Toast.LENGTH_SHORT).show();

و اما اگر کاربر تکست باکست ها رو رها کرده بود و روی دکمه ارسال کلیک کرده بود با پیغام لطفا شماره همراه و پیغام را وارد کنید مواجعه می شود:

   else
                {
                    Toast.makeText(MainActivity.this, "لطفا شماره همراه و متن پیام را وارد کنید.", Toast.LENGTH_SHORT).show();
                }

سورس کد ارسال ام اس در قالب تصویر :

فیلم آموزش ارسال پیامک sms اندروید استودیو Android Studio

فایل اجرایی برنامه :

 ارسال پیامک sms

امیدوارم این آموزش مورد پسند شما عزیزان قرار بگیره موفق و پیروز باشید.

خانه اندروید دانلود فیلم آموزشی  لطفا فیلم آموزشی رو هم ببنید برای توضیحات بیشتر :

homeandroid.ir دانلود فیلم آموزش ارسال پیامک sms اندروید استودیو Android Studio

حجم فیلم آموزشی   حجم فیلم : ۱۶ مگابایت

پسورد فایل   پسورد فایل فشرده : homeandroid.ir

خانه اندروید منبع آموزش : خانه اندروید

درباره نویسنده

جواد محمدی هستم بنیان‌گذار سایت خانه اندروید در خدمتون هستیم با آموزش و مفاهیم برنامه نویسی اندروید-نزدیک به 10 سال هست در حوزه برنامه نویسی فعالیت می کنم. مسلط به kotlin,java,flutter,php هستم . در خانه اندروید دانستی های خودم را در اختیار تمامی علاقمندان به برنامه نویسی قرار میدم.تشکر از اینکه خانه اندرورید رو دنبال می کنید.

قبل از ارسال دیدگاه

  • قبل از ارسال دیدگاه: لطفا دیدگاه خودتون رو فقط در مورد این مطلب بنویسید.سپاسگزارم.

    دیدگاه های طولانی نادیده گرفته می شوند لذا دیدگاه خودتان را در دو خط خلاصه کنید.

    دیدگاه های که شامل توهین یا متن توهین آمیز اصلا تایید نمی شود.

    به دیدگاه های بی نام و نشان که ایمیل فیک و نام فیک وارد می کنند پاسخ داده نمی شود

6 دیدگاه

  1. رئوف گفت:

    سلام
    من از دستور مستقیم برای ارسال پیامک استفاده کردم و لی مشکل اینجاست که هر شماره ای جز شماره خودم رو در شماره مقصد وارد میکنم ارسال نمیکنه هیچ پیامی هم نمیده و البته اینم باید اضافهکنم وقتی که شماره خودم رو هم میدم توی گوشی دیگه ای که شماره دیگه ای روش هست نصب میکنم بازم ارسال نمیشه به نظرتون چیکار باید کنم؟

    • سلام و احترام دوست عزیز
      حتما شما نسخه رایگان رو تهیه کردین که فقط به شماره موبایل خودتون ارسال می کنه باید تعرفه های دیگه رو تهیه کنید از طریق پنل پیامکی که تهیه کردین.
      با احترام.

  2. حامد گفت:

    سلام
    من برنامه ای نوشتم که برای فعالسازی از پیامک استفاده میکنه و میخواستم پیام درخواستی که از طریق گوشی کاربر برای من ارسال میشه در لیست پیامهای گوشی کاربر نمایش داده نشه(مثل همراه بانک ها که وقتی با پیامک کار میکنند چیزی در لیست پیامها معلوم نیست)
    از دستور
    getApplicationContext().getContentResolver().delete(
    Uri.parse(“content://sms/”+id), null, null);
    برای پاک کردن پیامک استفاده کردم اما کار نکرد اگر امکانش هست راهنماییم کنید ممنون میشم

  3. مهدی حیدری گفت:

    سلام

    ببخشید چطوری میشه به صورت مستقیم پیام رو ارسال کنیم؟؟؟

    ممنونم خیلی زیاد.

    • Admin گفت:

      سلام دوست عزیز مهدی حیدری
      برای ارسال مستقیم نیاز به مجور کاربر دارید که باید توی منفیست پروژه پرومیژن زیر رو اضافه کنید.
      android.permission.SEND_SMS
      و در اخر برای ارسال مستقیم نیاز به دستورات تراکنشی و یا مدیریتی دارید.
      SmsManager smsManager = SmsManager.getDefault();
      smsManager.sendTextMessage(phoneNo, null, message, null, null);

      موفق باشین.