Di Android, Anda dapat menggunakan
SmsManager
API atau perangkat Built-in SMS
aplikasi untuk mengirim pesan SMS. Dalam tutorial ini, kami menampilkan dua contoh dasar untuk mengirim pesan SMS: - SmsManager API
- Built-in aplikasi SMS
SmsManager smsManager = SmsManager.getDefault(); smsManager.sendTextMessage("phoneNo", null, "sms message", null, null);
Intent sendIntent = new Intent(Intent.ACTION_VIEW); sendIntent.putExtra("sms_body", "default content"); sendIntent.setType("vnd.android-dir/mms-sms");startActivity(sendIntent);
Contoh Membuat Project Android
1. Pada Android Studio, buatlah project baru.
=> Jika Anda tidak memiliki sebuah project, di layar Welcome klik New Project.
=> Jika Anda telah membuka project, dari menu File, pilih New Project.
=> Jika Anda telah membuka project, dari menu File, pilih New Project.
2. Pada Configure your new project, isi kolom berikut seperti di bawah ini.
=> Application name ⇒ SendSMS
=> Company domain ⇒ example.com (Misalnya: com.tahukoding.SendSMS)
=> Project Location ⇒ memilih lokasi untuk project Anda.
3. Pada Select the form factors your app will run on, centang untuk Phone and Tablet.
=> Untuk Minimum SDK, pilih API 10: Android 2.3.3 (Gingerbread). klik Next.
4. Pada Add an activity to Mobile, pilih Blank Activity dan klik Next.
Next ->
5. Klik tombol Finish untuk membuat project.
1. SmsManager Contoh
<?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: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="sendsms.tahukoding.com.sendsms.MainActivity" android:background="@android:color/holo_green_light"> <ImageView android:layout_width="150dp" android:layout_height="150dp" android:background="@drawable/tk" android:id="@+id/imageView2" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="68dp" /> <TextView android:text="@string/tk" android:textSize="50sp" android:textStyle="bold" android:textAlignment="center" android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/textView5" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" /> <TextView android:text="@string/phone" android:textSize="20sp" android:textStyle="bold" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:id="@+id/textView8" /> <Button android:text="Kirim" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/btn" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" /> <EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:inputType="phone" android:ems="10" android:background="@android:color/background_light" android:layout_below="@+id/textView8" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:id="@+id/noHp" /> <TextView android:text="@string/pesan" android:textSize="20sp" android:textStyle="bold" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="17dp" android:id="@+id/textView9" android:layout_below="@+id/noHp" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" /> <EditText android:layout_width="match_parent" android:layout_height="100dp" android:inputType="textPersonName" android:ems="10" android:id="@+id/pesan" android:background="@android:color/background_light" android:gravity="top" android:layout_below="@+id/textView9" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" /> </RelativeLayout>=
=> Buka string.xml terletak di app ⇒ res ⇒ value dan copy kode di bawah ini.
string.xml
<resources> <string name="app_name">SendSMS</string> <string name="tk">Tahu Koding</string> <string name="phone">No Hp</string> <string name="pesan">Ketik Pesan</string> </resources>
=> Sekarang Buka MainActivity.java terletak di app ⇒ src ⇒ Java dan copy kode di bawah ini.
MainActivity.java
package sendsms.tahukoding.com.sendsms; import android.support.v7.app.AppCompatActivity; 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 { private Button btnKirim; private EditText noHp; private EditText pesan; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btnKirim = (Button) findViewById(R.id.btn); noHp = (EditText) findViewById(R.id.noHp); pesan = (EditText) findViewById(R.id.pesan); btnKirim.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String nomor = noHp.getText().toString(); String sms = pesan.getText().toString(); try{ SmsManager smsManager = SmsManager.getDefault(); smsManager.sendTextMessage(nomor, null, sms, null, null); Toast.makeText(getApplicationContext(), "Pesan dikirim!", Toast.LENGTH_LONG).show(); } catch (Exception e) { Toast.makeText(getApplicationContext(), "SMS gagal, coba lagi nanti!", Toast.LENGTH_LONG).show(); e.printStackTrace(); } } }); } }
=> Sekarang Buka AndroidManifest.xml terletak di app ⇒ src ⇒ main dan copy kode di bawah ini.
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="sendsms.tahukoding.com.sendsms"> <uses-permission android:name="android.permission.SEND_SMS"/> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
Untuk menjalankan aplikasi dari Android Studio , klik Run ikon dari toolbar.
2. Built-in SMS application Contoh
activity_main.xml
<?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: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="sendsms2.tahukoding.com.sendsms2.MainActivity" android:background="@android:color/holo_green_light"> <TextView android:text="@string/tk" android:textSize="50sp" android:textStyle="bold" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:id="@+id/textView" /> <ImageView android:layout_width="150dp" android:layout_height="150dp" app:srcCompat="@drawable/tk" android:layout_below="@+id/textView" android:layout_centerHorizontal="true" android:layout_marginTop="12dp" android:id="@+id/imageView" /> <Button android:text="Send" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/button" android:layout_below="@+id/imageView" android:layout_centerHorizontal="true" android:layout_marginTop="34dp" /> </RelativeLayout>
string.xml
<resources> <string name="app_name">SendSMS2</string> <string name="tk">Tahu Koding</string> </resources>
MainActivity.java
package sendsms2.tahukoding.com.sendsms2; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Toast; public class MainActivity extends AppCompatActivity { private Button btnSend; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btnSend = (Button) findViewById(R.id.button); btnSend.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { try { Intent intent = new Intent(Intent.ACTION_VIEW); intent.putExtra("sms_body", "Ketik disini..."); intent.setType("vnd.android-dir/mms-sms"); startActivity(intent); } catch (Exception e){ Toast.makeText(getApplicationContext(), "sms gagal" , Toast.LENGTH_LONG).show(); e.printStackTrace(); } } }); } }