ارسال SMS در اندروید
پنجشنبه 23 مرداد 1393بیشتر ما در این روزگار دارای یک گوشی هستیم و میتوانیم پیامک ارسال نمایید.حال اگر بخوایم اپلیکیشنی بنویسیم که از آن طریق SMS بفرستیم باید چیکار کنیم. برای اینکار در اندروید SmsManager برای اینکار قرار داده شده است. در این آموزش قصد داریم یک SMS را بصورت متنی ساده به شماره مورد نظر ارسال نماییم
روال کار بدین صورت است دو EditeText داریم ، یکی برای شماره و یکی هم برای متن
فایل main.xml
<?
xml
version
=
"1.0"
encoding
=
"utf-8"
?>
android:id
=
"@+id/linearLayout1"
android:layout_width
=
"fill_parent"
android:layout_height
=
"fill_parent"
android:orientation
=
"vertical"
>
<
TextView
android:id
=
"@+id/textViewPhoneNo"
android:layout_width
=
"wrap_content"
android:layout_height
=
"wrap_content"
android:layout_margin
=
"5dip"
android:text
=
"Enter Phone Number : "
android:textAppearance
=
"?android:attr/textAppearanceLarge"
/>
<
EditText
android:id
=
"@+id/editTextPhoneNo"
android:layout_width
=
"fill_parent"
android:layout_height
=
"wrap_content"
android:layout_margin
=
"5dip"
android:phoneNumber
=
"true"
>
</
EditText
>
<
TextView
android:id
=
"@+id/textViewSMS"
android:layout_width
=
"wrap_content"
android:layout_height
=
"wrap_content"
android:layout_margin
=
"5dip"
android:text
=
"Enter SMS Message : "
android:textAppearance
=
"?android:attr/textAppearanceLarge"
/>
<
EditText
android:id
=
"@+id/editTextSMS"
android:layout_width
=
"fill_parent"
android:layout_height
=
"wrap_content"
android:layout_margin
=
"5dip"
android:gravity
=
"top"
android:inputType
=
"textMultiLine"
android:lines
=
"5"
/>
<
Button
android:id
=
"@+id/buttonSend"
android:layout_width
=
"fill_parent"
android:layout_height
=
"wrap_content"
android:layout_margin
=
"5dip"
android:text
=
"Send"
/>
</
LinearLayout
>
چیز خاص دیگه ای در xml نیستش که احتیاج به توضیح باشه
خب.....
در اکتیویتی create.java :
txt_number = (EditText) findViewById(R.id.editTextPhoneNo);
txt_text = (EditText) findViewById(R.id.editTextSMS);
btn_send = (Button) findViewById(R.id.buttonSend);
btn_send.setOnClickListener(
new
View.OnClickListener() {
@Override
public
void
onClick(View v) {
// TODO Auto-generated method stub
String phoneNo = txt_number.getText().toString();
String sms = txt_text.getText().toString();
try
{
SmsManager smsmanager = SmsManager.getDefault();
smsmanager.sendTextMessage(phoneNo,
null
, sms,
null
,
null
);
Toast.makeText(getApplicationContext(),
"SMS Sent"
,
1
)
.show();
}
catch
(Exception e) {
// TODO: handle exception
Toast.makeText(getApplicationContext(),
"SMS faild, please try again later!"
,
Toast.LENGTH_LONG).show();
e.printStackTrace();
}
}
});
در این فایل فقط این دو خط :
SmsManager smsmanager = SmsManager.getDefault();
smsmanager.sendTextMessage(phoneNo,
null
, sms,
null
,
null
);
مربوط به ارسال پیامک میباشد تا متن را به شماره مقصد بفرستد
- Android
- 2k بازدید
- 9 تشکر