Android簡易實戰教程--第四話《最簡單的短信發送器》
來源:程序員人生 發布時間:2016-07-07 08:50:47 閱讀次數:2606次
首先配置1個布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity"
android:orientation="vertical"
>
<EditText
android:id="@+id/et_phone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="phone"
android:hint="請輸入對方號碼"
/>
<EditText
android:id="@+id/et_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:lines="5"
android:hint="請輸入短信內容"
android:gravity="top"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="發送"
android:onClick="send"
/>
</LinearLayout>
然后在activity中把發短信的代碼寫出來:
package com.ydl.smssender;
import java.util.ArrayList;
//省略導包
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void send(View v){
//拿到用戶輸入的號碼和內容
EditText et_phone = (EditText) findViewById(R.id.et_phone);
EditText et_content = (EditText) findViewById(R.id.et_content);
String phone = et_phone.getText().toString();
String content = et_content.getText().toString();
//1.獲得短信管理器
SmsManager sm = SmsManager.getDefault();
//2.切割短信,把長短信分成若干個小短信
ArrayList<String> smss = sm.divideMessage(content);//an ArrayList of strings that, in order, comprise the original message
//3.for循環把集合中所有短信全部發出去
for (String string : smss) {
sm.sendTextMessage(phone, null, string, null, null);//Send a text based SMS.
}
}
}
發短信是需要系統權限的:
<uses-permission android:name="android.permission.SEND_SMS"/>
效果:
開了兩個摹擬器,實現了發短信功能。

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈