简易发送短信app
SmsManager發送短信
1,
//獲取SMSManager管理器smsmanager=SmsManager.getDefault();
2,
//創建一個PendingIntent對象 PendingIntent pi=PendingIntent.getActivity(MainActivity.this, 0, new Intent(), 0); //發送短信 smsmanager.sendTextMessage(number.getText().toString(), null, content.getText().toString(), pi, null);
SmsManager.sendTextMessage(String destinationAddress, String scAddress, String text, PendingIntent sentIntent, PendingIntent deliveryIntent)
本程序可以直接填入對方號碼,輸入內容發送短信,也可以點擊通訊錄按鈕,從通訊錄中獲取聯系人電話
MainActivity.java
package com.hust.sendsms;import android.app.Activity; import android.app.PendingIntent; import android.content.CursorLoader; 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.Menu; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast;public class MainActivity extends Activity {SmsManager smsmanager=null;EditText number,content;Button send;final int PICK_CONTACT=0;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);number=(EditText) findViewById(R.id.editText1);content=(EditText) findViewById(R.id.editText2);send=(Button) findViewById(R.id.button1);//獲取SMSManager管理器smsmanager=SmsManager.getDefault();send.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stub//創建一個PendingIntent對象PendingIntent pi=PendingIntent.getActivity(MainActivity.this, 0, new Intent(), 0);//發送短信smsmanager.sendTextMessage(number.getText().toString(), null, content.getText().toString(), pi, null);content.setText("");Toast.makeText(MainActivity.this, "短信發送成功!", Toast.LENGTH_LONG).show();}});// 通訊錄按鈕Button btn=(Button) findViewById(R.id.button2);btn.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View v) {// TODO Auto-generated method stub//創建intentIntent intent=new Intent();//設置Intent的Action屬性intent.setAction(Intent.ACTION_GET_CONTENT);//設置Intent的Type屬性intent.setType("vnd.android.cursor.item/phone");//啟動Activity,并希望獲取該Activity的結果startActivityForResult(intent,PICK_CONTACT);}}); }//重寫該方法,處理返回的結果,獲取聯系人的電話@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {// TODO Auto-generated method stubsuper.onActivityResult(requestCode, resultCode, data);switch(requestCode){case (PICK_CONTACT):if(resultCode==Activity.RESULT_OK){//Activity.RESULT_OK標準Activity結果 -1//獲取返回的數據Uri contactdata=data.getData();CursorLoader cursorloader=new CursorLoader(this, contactdata, null, null, null, null);//查詢聯系人信息Cursor cursor=cursorloader.loadInBackground();//如果查詢到指定的聯系人if(cursor.moveToFirst()){//獲取聯系人的IdString contactId=cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID));//獲取聯系人的名字String name=cursor.getString(cursor.getColumnIndexOrThrow(ContactsContract.Contacts.DISPLAY_NAME));String phoneNumber="此聯系人暫未輸入電話號碼";//根據聯系人查詢該聯系人的詳細信息Cursor phones=getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID+"="+contactId, null, null);//if(phones.moveToFirst()){//取出電話號碼phoneNumber=phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));}phones.close();//獲取聯系人電話號碼number.setText(phoneNumber); }cursor.close();}break;}}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}@Overridepublic boolean onOptionsItemSelected(MenuItem item) {// Handle action bar item clicks here. The action bar will// automatically handle clicks on the Home/Up button, so long// as you specify a parent activity in AndroidManifest.xml.int id = item.getItemId();if (id == R.id.action_settings) {return true;}return super.onOptionsItemSelected(item);} }
activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="fill_parent"android:layout_height="wrap_content"android:orientation="vertical"><LinearLayoutandroid:layout_width="fill_parent"android:layout_height="wrap_content"android:orientation="horizontal" ><EditTextandroid:id="@+id/editText1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="0.95"android:ems="10"android:hint="請輸入號碼:"android:inputType="number" ></EditText><Buttonandroid:id="@+id/button2"android:layout_width="108dp"android:layout_height="wrap_content"android:text="通訊錄" /> </LinearLayout><EditTextandroid:id="@+id/editText2"android:layout_width="match_parent"android:layout_height="200dp"android:ems="10"android:gravity="top|left"android:hint="請輸入內容:"/><Buttonandroid:id="@+id/button1"android:layout_width="fill_parent"android:layout_height="wrap_content"android:text="Send_Sms" /></LinearLayout>
總結
- 上一篇: AudioManager播放音乐
- 下一篇: 去掉标题栏全屏显示代码