使用到的系統類以及方法總結:
java
1、短信管理器:android
一、SmsManager smsmanger= SmsManager.getDefault(); //獲取管理器對象安全
二、ArrayList<String> list = smsmanager.divideMessage(message); //當內容不少的時候咱們要拆份內容其中message是獲取的內容app
三、for (String text : list) {
// 發送地址 ,通訊地址,短信內容,發送狀態, 對方是否接受到短信,而最後的這兩個獲取是有電信號以廣播的形式來接受
smsmanager.sendTextMessage(number, null, text, null, null);
}ide
四、// 是一種是activity 由於父類是context 類型,第二種是getApplicationContext();
Toast.makeText(MainActivity.this, R.string.success,
Toast.LENGTH_LONG).show();this
2、實現代碼:spa
一、layout /main.xmlcode
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/lablemess"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="16px"
android:layout_marginTop="16px"
android:text="@string/number" />
<EditText
android:id="@+id/number"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/lablemess" />
</RelativeLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="66px"
android:text="@string/message" />
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<EditText
android:id="@+id/message"
android:layout_width="360px"
android:layout_height="wrap_content"
android:minLines="2" />
<Button
android:id="@+id/button"
android:layout_width="120px"
android:layout_height="40px"
android:layout_alignBottom="@id/message"
android:layout_toRightOf="@id/message"
android:background="@color/back_color"
android:text="@string/buttons"
android:textColor="@color/text_color" />
</RelativeLayout>
</LinearLayout>xml
二、values /colors :對象
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="back_color">#00CC00</color>
<color name="text_color">#0000ff</color>
</resources>
三、 values/strings:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">sms</string>
<string name="number">收信人</string>
<string name="message">寫信息</string>
<string name="action_settings">settings</string>
<string name="buttons">發送</string>
<string name="success">發送成功</string>
</resources>
四、實現發送的activity 代碼:
package com.inspur.sms;
import java.util.ArrayList;
import android.support.v7.app.ActionBarActivity;
import android.telephony.SmsManager;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends ActionBarActivity {
private EditText numberText;
private EditText messageText;
private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 實現發送功能
// 獲取編輯款,按鈕實例,獲取內容, 使用 發送信息smsmanager 發送試用toast顯示
numberText = (EditText) findViewById(R.id.number);
messageText = (EditText) findViewById(R.id.message);
button = (Button) findViewById(R.id.button);
// 若是短信過長則使用提供的方式來分多條發送
// 按鈕點擊事件
button.setOnClickListener(new ButtonClickListener());
}
private final class ButtonClickListener implements View.OnClickListener {
// 實現未實現方法
public void onClick(View view) {
// 獲取信息
String number = numberText.getText().toString();
String message = messageText.getText().toString();
// 全部信息獲取以後要進行短信管理器對象的獲取,進行短信的發送管理
SmsManager smsmanager = SmsManager.getDefault();
// 使用短信管理器進行短信發送
// 當內容不少的時候咱們要拆份內容
ArrayList<String> list = smsmanager.divideMessage(message);
// 若是是多條短信則進行循環發送
for (String text : list) {
// 發送地址 ,通訊地址,短信內容,發送狀態, 對方是否接受到短信,而最後的這兩個獲取是有電信號以廣播的形式來接受
smsmanager.sendTextMessage(number, null, text, null, null);
}
// 信息發送完以後的提示信息:
// 通常有三種提示方式 狀態欄提示, 窗口提示,還有就是吐司提示,就是界面提示
// 這裏使用吐司提示, 第一個是一個context 對象,第二個是一個要顯示的內容,第三個是吐司要顯示的時間
// 吐司提示方式中第一個參數就是context 有兩種方式
// 是一種是activity 由於父類是context 類型,第二種是getApplicationContext();
// 最後調用show() 方法顯示發送成功
Toast.makeText(MainActivity.this, R.string.success,
Toast.LENGTH_LONG).show();
// 到這裏就完了 可是咱們還要對於不安全的信息進行 配置,這裏是使用
}
}
@Override
public 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;
}
@Override
public 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);
}
}
3、清單文件配置:
一、在android 中咱們使用不安全的軟件的時候咱們最後要在清單文件中添加權限:
<uses-permission android:name="android.permission.SEND_SMS"/>