Selasa, 04 Maret 2014

Membuat Aplikasi Android untuk Mengirim SMS dengan Intent

Membuat Aplikasi Android untuk Mengirim SMS dengan Intent adalah cara yang sangat sederhana untuk Mengirimkan Pesan Singkat (SMS) dari Aplikasi Android yang kita buat.

Ketika penulis Browsing di Internet ternyata bermacam-macam cara untuk mengirim SMS Menggunakan Intent, disini penulis gunakan keempat cara yang penulis temukan, silakan dicoba dan dipilih sendiri yang terbaik :)

Caranya pertama kita buat Project Android baru di Eclipse. Kemudian di MainActivity.java silakan masukkan kode program berikut ini :


package com.amijaya.send_sms_intent;

import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;

public class MainActivity extends Activity {

// http://cariprogram.blogspot.com
// nuramijaya@gmail.com

Button button1;
Button button2;
Button button3;
Button button4;

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

button1 = (Button)findViewById(R.id.button1);
button1.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
String number = "081904094393"; 
       startActivity(new Intent(Intent.ACTION_VIEW, Uri.fromParts("sms", number, null)));
}
});

button2 = (Button)findViewById(R.id.button2);
button2.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Uri uri = Uri.parse("smsto:081904094393");
    Intent i = new Intent(Intent.ACTION_SENDTO, uri);
    i.putExtra("sms_body", "Halo, Ini Tes SMS");
    startActivity(i);
}
});

button3 = (Button)findViewById(R.id.button3);
button3.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
try {
 
    Intent sendIntent = new Intent(Intent.ACTION_VIEW);
    sendIntent.putExtra("sms_body", "Halo, Tes SMS"); 
    sendIntent.setType("vnd.android-dir/mms-sms");
    startActivity(sendIntent);

} catch (Exception e) {
Toast.makeText(getApplicationContext(),
"SMS Gagal!",
Toast.LENGTH_LONG).show();
e.printStackTrace();
}
}
});

button4 = (Button)findViewById(R.id.button4);
button4.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent smsIntent = new Intent(Intent.ACTION_VIEW);
smsIntent.setData(Uri.parse("smsto:"));
smsIntent.setType("vnd.android-dir/mms-sms");
smsIntent.putExtra("address"  , new String("081904094393;02746603399"));
smsIntent.putExtra("sms_body"  , "Test SMS Halo");
startActivity(smsIntent);
}
});
}

@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;
}

}

Pada desain tampilan pada file activity_main.xml, tambahkan empat buah Button sebagai berikut :

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/LinearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity" >

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Send SMS" />

    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Send SMS" />

    <Button
        android:id="@+id/button3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Send SMS" />

    <Button
        android:id="@+id/button4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Send SMS" />

</LinearLayout>

Konfigurasi di AndroidManifest.xml jika perlu ditambahkan Uses Permission SEND SMS seperti ini :

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.amijaya.send_sms_intent"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="9"
        android:targetSdkVersion="16" />
    <uses-permission android:name="android.permission.SEND_SMS"/>

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.amijaya.send_sms_intent.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>

Hasilnya akan ditampilkan Empat Buah Button yang ketika ditekan maka setiap masing-masing tombol tersebut mempunyai kegunaan yang sama yaitu memanggil Aplikasi / Fitur pengirim SMS di Android dengan otomatis sudah menuliskan No Handphone Tujuan dan Isi Pesan SMS, sehingga pengguna tinggal klik Send.


Fitur / Aplikasi SMS yang terpanggil kira-kira akan tampak sebagai berikut :


File project selengkapnya dapat anda download disini. Jika bingung cara download, silakan lihat caranya disini.

Semoga bermanfaat :D

1 komentar:

  1. Kalo nomor telepon ditentuin dari awal caranya gimana ya?
    terimakasih.

    BalasHapus