1.打電話;
EditText mobileText = (EditText)findViewById(R.id.mobile);
String mobile = mobileText.getText().toString();
Intent intent = new Intent();
intent.setAction("android.intent.action.CALL");
intent.setData(Uri.parse("tel:"+ mobile));
startActivity(intent);
2.發簡訊
EditText mobileText = (EditText)findViewById(R.id.mobile);
EditText contentText = (EditText)findViewById(R.id.content);
String mobile = mobileText.getText().toString();
String content = contentText.getText().toString();
SmsManager smsManager = SmsManager.getDefault();
ArrayList<String> texts = smsManager.divideMessage(content);//拆分簡訊
for(String text : texts){
smsManager.sendTextMessage(mobile, null, text, null, null);
}
需在AndroidManifest中聲明:<uses-permission android:name="android.permission.SEND_SMS"/>
3.收簡訊:
public class SMSReceiver extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
if ("android.provider.Telephony.SMS_RECEIVED"
.equals(intent.getAction()))
{
String phonenumber = null;
String message=null;
// 接收由SMS傳過來的資料
Bundle bundle = intent.getExtras();
// 判斷是否有資料
if (bundle != null)
{
// 通過pdus可以獲得接收到的所有簡訊訊息
Object[] objArray = (Object[]) bundle.get("pdus");
/* 構建簡訊對象array,並依據收到的對象長度來建立array的大小 */
SmsMessage[] messages = new SmsMessage[objArray.length];
for (int i = 0; i < objArray.length; i++)
{
messages[i] = SmsMessage
.createFromPdu((byte[]) objArray[i]);
}
for (SmsMessage currentMessage : messages)
{
phonenumber = currentMessage.getDisplayOriginatingAddress();
message = currentMessage.getDisplayMessageBody();
}
}
Toast.makeText(context, "Number="+phonenumber+"Msg="+message, Toast.LENGTH_LONG).show();
}
}
}需在AndroidManifest中聲明:<uses-permission android:name="android.permission.RECEIVE_SMS"/>