1. 程式人生 > >Android入門 利用SmsManager傳送簡訊

Android入門 利用SmsManager傳送簡訊

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow

也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!

               

我們可以通過Intent呼叫傳送簡訊的服務,但是也可以通過SmsManager傳送;


一、為何需要自己開發簡訊傳送器


雖然在Android系統中已經存在傳送簡訊的應用,但是如果我們在開發其他應用時需要整合傳送簡訊功能,則很方便。


二、開發簡訊傳送器


應用目標:將應用安裝到5554模擬器上,併發送給5556的模擬器;

介面介紹:



核心程式碼:

(1)SmsManager manager = SmsManager.getDefault();   //獲得預設的訊息管理器

(2)ArrayList<String> list = manager.divideMessage(String txt);  //拆分長簡訊

(3)manager.sendTextMessage(String phone,null,String content,null,null);  //傳送簡訊


在AndroidManifest.xml中新增:


<uses-permission android:name="android.permission.SEND_SMS"/>

MainActivity.java

package org.xiazdong;import java.util.ArrayList;import android.app.Activity;import android.os.Bundle;import android.telephony.SmsManager;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 private Button btn; private EditText phoneEt,contextEt; private OnClickListener listener = new OnClickListener(){  @Override  public void onClick(View v) {   String phone = phoneEt.getText().toString();   String context = contextEt.getText().toString();   SmsManager manager = SmsManager.getDefault();   ArrayList<String> list = manager.divideMessage(context);  //因為一條簡訊有字數限制,因此要將長簡訊拆分   for(String text:list){    manager.sendTextMessage(phone, null, text, null, null);   }   Toast.makeText(getApplicationContext(), "傳送完畢", Toast.LENGTH_SHORT).show();  }    }; @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        btn = (Button)this.findViewById(R.id.btn);        phoneEt = (EditText)this.findViewById(R.id.phoneNumberEt);        contextEt = (EditText)this.findViewById(R.id.contextEt);        btn.setOnClickListener(listener);    }}




           

給我老師的人工智慧教程打call!http://blog.csdn.net/jiangjunshow

這裡寫圖片描述