自制发送短信程序(SmsManager与PendingIntent对象)
新建一个继承Activity类的SmsManagerAndPendingIntentActivity,并设置布局文件为:smsmanagerandpendingintent.xml。
首先在布局文件中添加2个EditText输入框和一个Button按钮。
<EditText android:id="@+id/smsmanagerandpendingintent_edit01" android:layout_width="fill_parent" android:layout_height="wrap_content" />
<EditText android:id="@+id/smsmanagerandpendingintent_edit02" android:layout_width="fill_parent" android:layout_height="wrap_content" />
<Button android:id="@+id/smsmanagerandpendingintent_btn" style="@android:style/Widget.Button.Inset" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/send" /> |
接着在Activity代码中获取这3个组件。
package lyx.feng.third;
import lyx.feng.simpletextdemo.R; import android.app.Activity; import android.os.Bundle; import android.telephony.SmsManager; import android.text.InputType; import android.text.TextUtils; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast;
public class SmsManagerAndPendingIntentActivity extends Activity implements OnClickListener { private Button btn = null; private EditText edit01 = null; private EditText edit02 = null;
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); super.setContentView(R.layout.smsmanagerandpendingintent); this.btn = (Button) super .findViewById(R.id.smsmanagerandpendingintent_btn); this.edit01 = (EditText) super .findViewById(R.id.smsmanagerandpendingintent_edit01); this.edit02 = (EditText) super .findViewById(R.id.smsmanagerandpendingintent_edit02); // 默认edit01只能输入电话 this.edit01.setInputType(InputType.TYPE_CLASS_PHONE); this.edit01.setHint("收件人号码"); this.edit02.setHint("内容"); this.btn.setOnClickListener(this); }
@Override public void onClick(View v) { // 发送短信的操作 String to = this.edit01.getText().toString(); String info = this.edit02.getText().toString(); if (TextUtils.isEmpty(to)||TextUtils.isEmpty(info)) { Toast.makeText(this, "不能为空!" + info.length(), Toast.LENGTH_SHORT).show(); return; } if (info.length() >= 70) { Toast.makeText(this, "短信内容过长,最长 70目前" + info.length(), Toast.LENGTH_SHORT).show(); return; } else { SmsManager smsManager = SmsManager.getDefault(); smsManager.sendTextMessage(to, null, info, null, null); }
} }
|