當(dāng)前位置:
首頁(yè) >
简易发送短信app
發(fā)布時(shí)間:2025/3/20
30
豆豆
SmsManager發(fā)送短信
1,
//獲取SMSManager管理器smsmanager=SmsManager.getDefault();
2,
//創(chuàng)建一個(gè)PendingIntent對(duì)象 PendingIntent pi=PendingIntent.getActivity(MainActivity.this, 0, new Intent(), 0); //發(fā)送短信 smsmanager.sendTextMessage(number.getText().toString(), null, content.getText().toString(), pi, null);
SmsManager.sendTextMessage(String destinationAddress, String scAddress, String text, PendingIntent sentIntent, PendingIntent deliveryIntent)
本程序可以直接填入對(duì)方號(hào)碼,輸入內(nèi)容發(fā)送短信,也可以點(diǎn)擊通訊錄按鈕,從通訊錄中獲取聯(lián)系人電話
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//創(chuàng)建一個(gè)PendingIntent對(duì)象PendingIntent pi=PendingIntent.getActivity(MainActivity.this, 0, new Intent(), 0);//發(fā)送短信smsmanager.sendTextMessage(number.getText().toString(), null, content.getText().toString(), pi, null);content.setText("");Toast.makeText(MainActivity.this, "短信發(fā)送成功!", 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//創(chuàng)建intentIntent intent=new Intent();//設(shè)置Intent的Action屬性intent.setAction(Intent.ACTION_GET_CONTENT);//設(shè)置Intent的Type屬性intent.setType("vnd.android.cursor.item/phone");//啟動(dòng)Activity,并希望獲取該Activity的結(jié)果startActivityForResult(intent,PICK_CONTACT);}}); }//重寫(xiě)該方法,處理返回的結(jié)果,獲取聯(lián)系人的電話@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標(biāo)準(zhǔn)Activity結(jié)果 -1//獲取返回的數(shù)據(jù)Uri contactdata=data.getData();CursorLoader cursorloader=new CursorLoader(this, contactdata, null, null, null, null);//查詢(xún)聯(lián)系人信息Cursor cursor=cursorloader.loadInBackground();//如果查詢(xún)到指定的聯(lián)系人if(cursor.moveToFirst()){//獲取聯(lián)系人的IdString contactId=cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID));//獲取聯(lián)系人的名字String name=cursor.getString(cursor.getColumnIndexOrThrow(ContactsContract.Contacts.DISPLAY_NAME));String phoneNumber="此聯(lián)系人暫未輸入電話號(hào)碼";//根據(jù)聯(lián)系人查詢(xún)?cè)撀?lián)系人的詳細(xì)信息Cursor phones=getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID+"="+contactId, null, null);//if(phones.moveToFirst()){//取出電話號(hào)碼phoneNumber=phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));}phones.close();//獲取聯(lián)系人電話號(hào)碼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="請(qǐng)輸入號(hào)碼:"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="請(qǐng)輸入內(nèi)容:"/><Buttonandroid:id="@+id/button1"android:layout_width="fill_parent"android:layout_height="wrap_content"android:text="Send_Sms" /></LinearLayout>
總結(jié)
- 上一篇: AudioManager播放音乐
- 下一篇: 去掉标题栏全屏显示代码