|
|
Metode dan Algoritma | Membuat Aplikasi SMS dengan Android . Anda bisa melakukan konsultasi tentang Membuat Aplikasi SMS dengan Android melalui form di samping kanan !!!
Beberapa hari yang lalu penulis dimintai bantuan oleh teman untuk bersama-sama mendevelop aplikasi Android untuk SMS secara otomatis dan masal. Setelah browsing sana-sini dan mencoba-coba, dapatlah kode program berikut yang merupakan salah satu bagian untuk mengirim SMS lewat aplikasi yang dibuat sendiri :
Pertama, buatlah project Android, misalnya dengan nama SendSMS
SendSMSActivity.java
package com.amijaya.SendSMSActivity;
import android.app.Activity;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class
SendSMSActivity extends Activity
{
Button btnKirimSMS;
EditText txtNoTelp;
EditText txtPesan;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
btnKirimSMS = (Button) findViewById(R.id.btn
KirimSMS);
txtNoTelp = (EditText) findViewById(R.id.txt
NoTelp);
txtPesan = (EditText) findViewById(R.id.txtPesan);
btnKirimSMS.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
String noTelp = txtNoTelp.getText().toString();
String pesan = txtPesan.getText().toString();
if (
noTelp.length()>0 && pesan.length()>0)
{
kirimSMS(noTelp, pesan);
}
}
else
Toast.makeText(getBaseContext(),
"Silakan Masukkan No Telp dan Pesan.",
Toast.LENGTH_SHORT).show();
}
});
}
private void KirimSMS(String noTelp, String pesan)
{
String SENT = "SMS_SENT";
String DELIVERED = "SMS_DELIVERED";
PendingIntent sentPI = PendingIntent.getBroadcast(this, 0,
new Intent(SENT), 0);
PendingIntent deliveredPI = PendingIntent.getBroadcast(this, 0,
new Intent(DELIVERED), 0);
//---when the SMS has been sent---
registerReceiver(new BroadcastReceiver(){
@Override
public void onReceive(Context arg0, Intent arg1) {
switch (getResultCode())
{
case Activity.RESULT_OK:
Toast.makeText(getBaseContext(), "SMS terkirim",
Toast.LENGTH_SHORT).show();
break;
case android.telephony.SmsManager.RESULT_ERROR_GENERIC_FAILURE:
Toast.makeText(getBaseContext(), "error",
Toast.LENGTH_SHORT).show();
break;
case android.telephony.SmsManager.RESULT_ERROR_NO_SERVICE:
Toast.makeText(getBaseContext(), "Tidak ada sinyal",
Toast.LENGTH_SHORT).show();
break;
case android.telephony.SmsManager.RESULT_ERROR_NULL_PDU:
Toast.makeText(getBaseContext(), "Null PDU",
Toast.LENGTH_SHORT).show();
break;
case android.telephony.SmsManager.RESULT_ERROR_RADIO_OFF:
Toast.makeText(getBaseContext(), "GSM mati",
Toast.LENGTH_SHORT).show();
break;
}
}
}, new IntentFilter(SENT));
//---when the SMS has been delivered---
registerReceiver(new BroadcastReceiver(){
@Override
public void onReceive(Context arg0, Intent arg1) {
switch (getResultCode())
{
case Activity.RESULT_OK:
Toast.makeText(getBaseContext(), "SMS delivered",
Toast.LENGTH_SHORT).show();
break;
case Activity.RESULT_CANCELED:
Toast.makeText(getBaseContext(), "SMS not delivered",
Toast.LENGTH_SHORT).show();
break;
}
}
}, new IntentFilter(DELIVERED));
android.telephony.SmsManager sms = android.telephony.SmsManager.getDefault();
sms.sendTextMessage(noTelp, null, pesan, sentPI, deliveredPI);
}
}
Buat kelas baru bernama PenerimaSMS.java yang berfungsi sebagai Broadcast yang mendengarkan jika ada SMS masuk (delivered) :
package com.amijaya.SendSMS;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.telephony.gsm.SmsMessage;
import android.widget.Toast;
public class PenerimaSMS extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
Bundle bundle = intent.getExtras();
SmsMessage[] msgs = null;
String str = "";
if (bundle != null)
{
Object[] pdus = (Object[]) bundle.get("pdus");
msgs = new SmsMessage[pdus.length];
for (int i=0; i<msgs.length; i++){
msgs[i] = SmsMessage.createFromPdu((byte[])pdus[i]);
str += "SMS dari " + msgs[i].getOriginatingAddress();
str += " :";
str += msgs[i].getMessageBody().toString();
str += "\n";
}
Toast.makeText(context, str, Toast.LENGTH_SHORT).show();
}
}
}
Buka layout/main.xml untuk membuat design tampilannya :
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Enter the phone number of recipient"
/>
<EditText
android:id="@+id/txtNoTelp"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Pesan"
/>
<EditText
android:id="@+id/txtPesan"
android:layout_width="fill_parent"
android:layout_height="150px"
android:gravity="top"
/>
<Button
android:id="@+id/btnKirimSMS"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Kirim SMS"
/>
</LinearLayout>
Buka AndroidManifest.xml, kemudian tambahkan baris untuk mendeklarasikan PenerimaSMS dan Permisiion untuk SEND_SMS dan RECEIVE_SMS :
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.amijaya.SendSMS"
android:versionCode="1"
android:versionName="1.0.0">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".SendSMSActivity "
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver android:name=".PenerimaSMS">
<intent-filter>
<action android:name=
"android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>
</application>
<uses-permission android:name="android.permission.SEND_SMS">
</uses-permission>
<uses-permission android:name="android.permission.RECEIVE_SMS">
</uses-permission>
</manifest>
ActionScript AS3 ASP.NET AJAX C / C++ C# Clipper COBOL ColdFusion DataFlex Delphi Emacs Lisp Fortran FoxPro Java J2ME JavaScript JScript Lingo MATLAB Perl PHP PostScript Python SQL VBScript Visual Basic 6.0 Visual Basic .NET Flash MySQL Oracle Android
Related Post :

Judul: Membuat Aplikasi SMS dengan Android
Rating: 100% based on 99998 ratings. 5 user reviews.
Ditulis Oleh hank2
Rating: 100% based on 99998 ratings. 5 user reviews.
Ditulis Oleh hank2
Anda sedang membaca artikel tentang
Membuat Aplikasi SMS dengan Android, Semoga artikel tentang Membuat Aplikasi SMS dengan Android ini sangat bermanfaat bagi teman-teman semua, jangan lupa untuk mengunjungi lagi melalui link
Membuat Aplikasi SMS dengan Android.

{ 0 komentar... Views All / Send Comment! }
Posting Komentar