Hướng Dẫn Code Gửi Tin Nhắn Sms Trong Android

Thảo luận trong 'Tổng Hợp' bắt đầu bởi Pussy, Thg 12 21, 2016.

  1. Pussy

    Pussy New Member Chuyển tiền Tìm chủ đề

    Bài viết:
    Tìm chủ đề
    950
    Trong bài viết này, chúng tôi xin chia sẻ với các bạn code gửi tin nhắn SMS trên Android. Cùng nhau theo dõi nhé các bạn.

    Có hai lựa chọn cho việc gửi tin nhắn SMS trên Android:

    – Sử dụng SmsManager để gửi tin nhắn trong nền background.

    – Sử dụng một Intent gửi người dùng đến các ứng dụng tin nhắn SMS với một số cài đặt trước và tin nhắn.

    Trong hướng dẫn học lập trình android này, chúng tôi cho bạn thấy ví dụ cơ bản để gửi tin nhắn SMS trong Android thông qua Intent. Bạn cần phải viết chỉ có 4 dòng mã send sms trong Android.

    Mã:
    //Getting intent and PendingIntent instance
    Intent intent=new Intent(getApplicationContext(),MainActivity.class);
    PendingIntent pi=PendingIntent.getActivity(getApplicationContext(), 0, intent,0);//Get the SmsManager instance and call the sendTextMessage method to send message
    SmsManager sms=SmsManager.getDefault();
    sms.sendTextMessage(“8802177690”, null, “hello javatpoint”, pi,null);
    Ví dụ gửi tin nhắn SMS trong Android

    Kéo 2 edittexts, 2 textviews và 1 nút từ pallete, bây giờ các tập tin activity_main.xml sẽ như thế này:

    File: activity_main.xml

    Mã:
    <RelativeLayout xmlns:androclass=”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/editText1″
    android:layout_width=”wrap_content”
    android:layout_height=”wrap_content”
    android:layout_alignParentRight=”true”
    android:layout_alignParentTop=”true”
    android:layout_marginRight=”20dp”
    android:ems=”10″ />
    
    <EditText
    android:id=”@+id/editText2″
    android:layout_width=”wrap_content”
    android:layout_height=”wrap_content”
    android:layout_alignLeft=”@+id/editText1″
    android:layout_below=”@+id/editText1″
    android:layout_marginTop=”26dp”
    android:ems=”10″
    android:inputType=”textMultiLine” />
    
    <TextView
    android:id=”@+id/textView1″
    android:layout_width=”wrap_content”
    android:layout_height=”wrap_content”
    android:layout_alignBaseline=”@+id/editText1″
    android:layout_alignBottom=”@+id/editText1″
    android:layout_toLeftOf=”@+id/editText1″
    android:text=”Mobile No:” />
    
    <TextView
    android:id=”@+id/textView2″
    android:layout_width=”wrap_content”
    android:layout_height=”wrap_content”
    android:layout_alignBaseline=”@+id/editText2″
    android:layout_alignBottom=”@+id/editText2″
    android:layout_alignLeft=”@+id/textView1″
    android:text=”Message:” />
    
    <Button
    android:id=”@+id/button1″
    android:layout_width=”wrap_content”
    android:layout_height=”wrap_content”
    android:layout_alignLeft=”@+id/editText2″
    android:layout_below=”@+id/editText2″
    android:layout_marginLeft=”34dp”
    android:layout_marginTop=”48dp”
    android:text=”Send SMS” />
    
    </RelativeLayout>
    Viết mã cho phép trong file Android-manifest.xml. Bạn cần phải viết SEND_SMS phép như đưa ra dưới đây:

    Mã:
    <uses-permission android:name=”android.permission.SEND_SMS”/>
    File: Android-Manifest.xml
    
    <?xml version=”1.0″ encoding=”utf-8″?>
    <manifest
    xmlns:androclass=”http://schemas.android.com/apk/res/android”
    package=”com.example.sendsms”
    android:versionCode=”1″
    android:versionName=”1.0″ ><uses-sdk
    android:minSdkVersion=”8″
    android:targetSdkVersion=”16″ />
    
    <uses-permission android:name=”android.permission.SEND_SMS”/>
    
    <uses-permission android:name=”android.permission.RECEIVE_SMS”/>
    
    <application
    android:allowBackup=”true”
    android:icon=”@drawable/ic_launcher”
    android:label=”@string/app_name”
    android:theme=”@style/AppTheme” >
    <activity
    android:name=”com.example.sendsms.MainActivity”
    android:label=”@string/app_name” >
    <intent-filter>
    <action android:name=”android.intent.action.MAIN” />
    
    <category android:name=”android.intent.category.LAUNCHER” />
    </intent-filter>
    </activity>
    </application>
    
    </manifest>
    Lớp Activity

    Chúng ta hãy viết code để thực hiện cuộc gọi điện thoại qua Intent.

    File: MainActivity.java

    Mã:
    package com.example.sendsms;
    
    import android.os.Bundle;
    import android.app.Activity;
    import android.app.PendingIntent;
    import android.content.Intent;
    import android.telephony.SmsManager;
    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 {
    
    EditText mobileno,message;
    Button sendsms;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    
    mobileno=(EditText)findViewById(R.id.editText1);
    message=(EditText)findViewById(R.id.editText2);
    sendsms=(Button)findViewById(R.id.button1);
    
    //Performing action on button click
    sendsms.setOnClickListener(new OnClickListener() {
    
    @Override
    public void onClick(View arg0) {
    String no=mobileno.getText().toString();
    String msg=message.getText().toString();
    
    //Getting intent and PendingIntent instance
    Intent intent=new Intent(getApplicationContext(),MainActivity.class);
    PendingIntent pi=PendingIntent.getActivity(getApplicationContext(), 0, intent,0);
    
    //Get the SmsManager instance and call the sendTextMessage method to send message
    SmsManager sms=SmsManager.getDefault();
    sms.sendTextMessage(no, null, msg, pi,null);
    
    Toast.makeText(getApplicationContext(), “Message Sent successfully!”,
    Toast.LENGTH_LONG).show();
    }
    });
    }
    
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;
    }
    
    }
    Kết quả:

    [​IMG]

    Trên đây chúng tôi đã chia sẻ với các bạn cách code gửi tin nhắn SMS. Hy vọng bài viết này sẽ giúp ích cho các bạn.

    Chúc các bạn học tốt!
     
    Last edited by a moderator: Thg 11 8, 2017
  2. Đang tải...
Trả lời qua Facebook

Chia sẻ trang này