編輯:高級開發
第一步:
在androidManifest.XML中
< application android:icon="@drawable/icon" android:label="@string/app_name">
< receiver android:name=".MyBroadcastReceiver">
< intent-filter>
< action android:name="android.provider.Telephony.SMS_RECEIVED"/>
< /intent-filter>
< /receiver>
< uses-permission android:name="android.permission.RECEIVE_SMS"/>< !-- 接收短信權限 -->
< uses-permission android:name="android.permission.SEND_SMS"/>< !-- 發送短信權限 -->
< /application>
第二步:
public class MyBroadcastReceiver extends BroadcastReceiver {
private static final String SMS_RECEIVED = "android.provider.Telephony.SMS_RECEIVED";
@Override public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(SMS_RECEIVED)) {
SmsManager sms = SmsManager.getDefault();
Bundle bundle = intent.getExtras();
if (bundle != null) {
Object[] pdus = (Object[]) bundle.get("pdus");
SmsMessage[] messages = new SmsMessage[pdus.length];
for (int i = 0; i < pdus.length; i++) messages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
for (SmsMessage message : messages){
String msg = message.getMessageBody();
String to = message.getOriginatingAddress();
sms.sendTextMessage(to, null, msg, null, null);
}}}}}
補充說明:除了短信到來廣播Intent,android還有很多廣播Intent,如:開機啟動、電池電量變化、時間已經改變等廣播Intent。
接收電池電量變化廣播Intent ,在androidManifest.XML文件中的< application>節點裡訂閱此Intent:
< receiver android:name=".MyBroadcastReceiver">
接上頁
< intent-filter>
< action android:name="android.intent.action.BATTERY_CHANGED"/>
< /intent-filter>
< /receiver>
接收開機啟動廣播Intent,在androidManifest.XML文件中的< application>節點裡訂閱此Intent:
< receiver android:name=".IncomingSMSReceiver">
< intent-filter>
< action android:name="android.intent.action.BOOT_COMPLETED"/>
< /intent-filter>
< /receiver>
並且要進行權限聲明:
< uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/
51CTO曾對android的系統架構做過詳細的解析。近日,Google的一位工程師Sans Serif發布了一篇博文非常清楚的描述了android系統架構,中國移動通
Google已經發布了android SDK 2.3版本,大家應該都在等android 2.3的升級吧?在51CTO獨家公布了android SDK 2.3下載地址後.
當我們創建一個帶EditText 或 AutoCompleteTextVIEw的視圖時,在加載視圖時總是會把輸入的焦點自動移動到第一個輸入框。如下圖所示:
國外一家名為Phandroid的網站近日披露了android 3.0(Gingerbread)的一些細節。雖然新的系統仍在開發之中,不過我們仍然可以從曝光的一些細節中看