<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:background="@drawable/back" android:orientation="vertical">
<ImageView android:src="@drawable/header"
android:layout_width="wrap_content" android:layout_height="wrap_content">
</ImageView>
<!-- layout untuk header -->
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content" android:orientation="horizontal"
android:layout_marginTop="20dip" android:layout_marginLeft="20dip">
<!-- layout gambar home -->
<ImageView android:layout_width="wrap_content"
android:layout_height="wrap_content" android:src="@drawable/home"></ImageView>
<TextView android:text="Main Menu / Generate Chart"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:textColor="#000000" android:textStyle="bold"
android:textSize="17dip" android:id="@+id/title_caption"></TextView>
</LinearLayout>
<!-- layout untuk garis line -->
<RelativeLayout android:layout_width="fill_parent"
android:layout_height="wrap_content" android:background="@drawable/line_gradient"
android:layout_marginTop="-15dip"></RelativeLayout>
<RelativeLayout android:layout_width="fill_parent"
android:layout_height="wrap_content" android:background="@drawable/line"
android:layout_marginTop="20dip"></RelativeLayout>
<ScrollView android:layout_width="fill_parent"
android:layout_height="wrap_content">
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content" android:orientation="vertical">
<TextView android:text="Nomor HP" android:textColor="#000000"
android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content" android:orientation="horizontal">
<EditText android:text="" android:id="@+id/TextNoHP"
android:layout_width="210dip" android:layout_height="wrap_content"></EditText>
<ImageButton android:layout_width="wrap_content"
android:id="@+id/button_add_contact" android:layout_height="wrap_content"
android:src="@drawable/add_contact"></ImageButton>
<ImageButton android:layout_width="wrap_content"
android:id="@+id/button_send" android:layout_height="wrap_content"
android:src="@drawable/sms"></ImageButton>
</LinearLayout>
<TextView android:text="Pesan" android:textColor="#000000"
android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
<EditText android:text="" android:id="@+id/TextPesan"
android:layout_width="fill_parent" android:minLines="4"
android:layout_height="wrap_content"></EditText>
</LinearLayout>
</ScrollView>
</LinearLayout>
package org.data.provider;
import java.util.List;
import android.app.Activity;
import android.app.PendingIntent;
import android.content.ContentResolver;
import android.content.Intent;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.provider.ContactsContract;
import android.telephony.SmsManager;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.Toast;
public class SmsActivity extends MyActivity {
public static final String ACTION_SMS_SENT = "com.example.android.apis.os.SMS_SENT_ACTION";
public static final int PICK_CONTACT = 1;
private EditText EditTextPesan, EditTextNomorHp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.layout_sms);
String sentText = getIntent().getExtras().getString("SEND_TEXT");
EditTextPesan = (EditText) findViewById(R.id.TextPesan);
EditTextNomorHp = (EditText) findViewById(R.id.TextNoHP);
EditTextPesan.setText(sentText);
final SmsManager sms = SmsManager.getDefault();
ImageButton buttonSend = (ImageButton) findViewById(R.id.button_send);
buttonSend.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(EditTextNomorHp.getText().toString().equals("")){
Dialog.pesanOk("Maaf anda belum memilih nomor telepon", SmsActivity.this);
return;
}
List messages = sms.divideMessage(EditTextPesan
.getText().toString());
String recipient = EditTextNomorHp.getText().toString();
for (String message : messages) {
sms.sendTextMessage(recipient, null, message, PendingIntent
.getBroadcast(SmsActivity.this, 0, new Intent(
ACTION_SMS_SENT), 0), null);
}
Toast.makeText(SmsActivity.this, "Pesan anda berhasil dikirim ", Toast.LENGTH_LONG).show();
}
});
ImageButton img = (ImageButton) findViewById(R.id.button_add_contact);
img.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(Intent.ACTION_PICK,
ContactsContract.Contacts.CONTENT_URI);
startActivityForResult(intent, PICK_CONTACT);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == PICK_CONTACT && resultCode==Activity.RESULT_OK) {
Uri contactData = data.getData();
ContentResolver cr = getContentResolver();
Cursor cur = managedQuery(contactData, null, null, null, null);
if (cur.getCount() > 0) {
while (cur.moveToNext()) {
String id = cur.getString(cur
.getColumnIndex(ContactsContract.Contacts._ID));
if (Integer
.parseInt(cur.getString(cur
.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER))) > 0) {
Cursor pCur = cr
.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
null,
ContactsContract.CommonDataKinds.Phone.CONTACT_ID
+ " = ?", new String[] { id },
null);
while (pCur.moveToNext()) {
String nomorHp = pCur
.getString(pCur
.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DATA));
EditTextNomorHp.setText(nomorHp);
}
pCur.close();
}
}
}
}
}
}
Nah cukup simple kan. Memang semua fungsi yang ada di android dapat dilakukan dengan mudah..
Semoga bermanfaat.
Update
Karena banyak yang menanyakan project dari source ini langsung saja download full projectnya disini yah..
https://dl.dropbox.com/u/20916268/Data%20Service%20Provider%209%20oktober%202011.zip


android apa yang kamu pake? lagi nyari2 android yang murah tapi bagus nih hehe
BalasHapussalah tempat kayaknya kalo nanya disini
BalasHapusmas,,mau tanya,,untuk class MyActivity nya tidak dijelaskan codingnya?..
BalasHapusapakah jarus dibuat class utk MyActivity?
oh pake Activity juga papa kok. itu saya pake untuk setting keseluruhan activity biar seragam...
BalasHapusBisa di upload project'nya gak mas. :D
BalasHapusemailnya apa?
BalasHapuskakak minta projectya ni ? ni email saya adhadimas91@gmail.com
Hapusoia Fb ya di confim ya ... mksi kak .
Yup udah saya kirim yah..
Hapusmas...untuk ngambil kontak dari phonebook koq ga bisa ya...??
BalasHapusgak bisanya gmana?
BalasHapusmas kok force close y,,
BalasHapusdi manifest y di tambahin user-permission apa gtu gk ? hehe
kk, minta project dong udh nyoba tp force close trs di bagian ContactsContract ngak bsa di import,,
BalasHapusemail y : ayat312@gmail.com
makasih y kk,,
ForceClosenya apa coba cek dulu di logcat...
BalasHapusmas ContactsContract kok gk bsa y, langsung di import android.provider.ContactsContract; malah tanda merah knp y?
BalasHapusCoba cek lagi merahnya itu kenapa..?? kalo tetap gak bisa berarti masalahnya bukan di importnya
BalasHapusmas mo nanya n, pas button_add_contact diklik muncul kontak y tapi gk ke set ke TextNoHP y...
BalasHapusfungsi onActivityResult di panggil y dmn ya mas..
onActivityResultnya kan udah jelas kan di Activity yang mengambil..
BalasHapusKomentar ini telah dihapus oleh pengarang.
BalasHapusmas saya mau tanya, kalo maksud dari syntax ini apa ya ?
BalasHapusif(EditTextNomorHp.getText().toString().equals("")){
Dialog.pesanOk("Maaf anda belum memilih nomor telepon", SmsActivity.this);
return;
Setelah saya coba ada tanda merah di .pesanOK
makasih mas sebelumnya..
Itu pake alertdialog sesuaikan ma codingmu
BalasHapusoia mas mau nanya lagi.. mas punya source code android untuk menampilkan inbox sms ga..? saya dah nyari tapi agak susah juga nemunya... mkasih mas sebelumnya
BalasHapusgan ane minta sourcodenya....email saya, benbear91@gmail.com
BalasHapusboleh minta sourcodenya gan? little.shine2507@gmail.com
BalasHapusthanks
mas aq minta programnya, kirim ke andy.octaviani@gmail.com
BalasHapusgan...
BalasHapusboleh minta sourcodenya gan?
penting nih buat belajar dari agan... hehhee
butuh bantuannya ya gan...
Thx... ^^
welly990@gmail.com
aslm mas,
BalasHapusbagaimana kalau kita mengKlik link dari isi pesan yg kita terima, gmna kodingannya mas ??
karena saya sudah buat kodingan untuk menerima pesan tapi saya kesusahan dalam meng"CLICKABLE" link dari isi pesan tersebut, bisa bantu gak mas ??
Wah Keren...
BalasHapusMinta ProjecNya donk Mas...
Kirim ke Email Saya : Daniraka_19@yahoo.co.id
Makasih ya Mas...
kk minta di kirimin full projectnya dunk ke email ini
BalasHapusmeizoel@gmail.com
aku lagi butuh banget nih buat tugas skripsi
plis bantuin yah kk
Gan Minta source code nya gan.
BalasHapusgw butuh bgt skripsi gw..
nicolas.oct@gmail.com
Baca tulisan ane di akhir post ini gan..
BalasHapusmas minta projectnya donk.untuk study mobile programing.
BalasHapusemail:rubaman.hasuli@gmail.com
thank you.. :)
wow,. nice. (y)
BalasHapuscan u send the source code to my e-mail.
lotulung.c@gmail.com
minta source codenya
BalasHapusgmail: rivantimargarita@gmail.com