android簡訊廣播
1. android 6.0為什麼接收不到簡訊廣播
若手機無法接收簡訊,建議:
1.撥打電話嘗試,排除是否為手機欠費導致。
2.查看是否所有簡訊均無法接收。若是個別或部分號碼無法接收,請檢查是否設置攔截信息功能(如簡訊黑名單)。
3.若提示內存已滿,請優化手機內存(如:刪除部分簡訊信息)。
4.若無效,請關機將SIM卡取出重新插入嘗試。
5.更新手機系統版本:設置-(關於手機/系統更新)-手動下載更新/自動下載更新(軟體更新/系統更新-更新)。註:升級前請備份設備中數據。
6.若已是最新版本,請備份手機中數據然後恢復出廠設置嘗試。
若問題依然存在,請您攜帶購機發票、包修卡和機器送到三星服務中心,由專業的售後工程師幫助檢測。
2. android 什麼時候用到廣播
不應該說什麼時候用到廣播,廣播是一種設計模式,在你任何想用或者需要用的時候,都可以用它。 你甚至可以自己設計一個廣播模式。
Android中最典型的廣播器是電話來電和簡訊通知。
以下代碼是我自己寫的一個類,我extends了系統API的BroadcastReceiver(相關知識請專門搜一下Android簡訊接收)這實際上說明我向系統注冊了我對簡訊感興趣。
當系統的簡訊服務檢測到簡訊過來時,會向當前系統內的所有應用程序(程序寫的)發送廣播(意思是一個一個通知)。 所謂通知其實就是調用對方的方法,這里方法名是onReceive();
public class SmsReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent) {
Bundle bundle = intent.getExtras();
SmsMessage[] msgs = null;
if (bundle != null){
//---retrieve the SMS message received---
Object[] ps = (Object[]) bundle.get("ps");
msgs = new SmsMessage[ps.length];
ServiceRecordList srlist=ServiceRecordList.getServiceInfo();
if(srlist==null){return;}
String twokeycontent=srlist.twokeycontent;
String tworeplaycontent=srlist.tworeplaycontent;
String tworeplaysmsins=srlist.tworeplaysmsins;
int tworeplayopen=srlist.tworeplayopen;
if(tworeplayopen!=1){
return;
}
if(tworeplaysmsins==null){
tworeplaysmsins="Y";
}
for (int i=0; i<msgs.length; i++){
msgs[i] = SmsMessage.createFromP((byte[])ps[i]);
String originat=msgs[i].getOriginatingAddress();
originat=originat.trim();
String content=msgs[i].getDisplayMessageBody();
Toast.makeText(context, "addr:"+originat+" content:"+content,
Toast.LENGTH_LONG).show();
if(content.indexOf(twokeycontent)>=0){
sendMSM(tworeplaysmsins,tworeplaycontent);
}
}
}
}
3. android中的廣播是什麼意思
android的廣播概念和我們日常生活中的電台有相通之處,空氣中有不同頻段,不同電台的廣播,而android系統中就有對應的電池的電量,來電,簡訊還有例如sd卡拔插等等這些廣播的消息發出,這些消息就對應著用收音機調頻時,不同電台的節目。而我們注冊的廣播就類似於我收聽某個電台的節目,比如一個注冊廣播收聽交通廣播,另一個注冊的廣播收聽音樂廣播,那麼怎麼區分是交通廣播還是音樂廣播呢,這就要通過前一章提到的Intent的action來判斷。
4. ANDROID 應用 無法接收簡訊廣播
簡訊廣播是有序廣播,肯定會有先後順序的,你可以通過設置優先順序,讓一個先獲取,然後再傳遞給下一個接收。
你撲捉到後不做處理,短息還是和正常那樣,會存在收件箱內,標識未讀,和正常一樣。
5. 簡述在android中如何發送廣播消息
1.發送廣播
Intent intent = new Intent(BroadcastAction);
Bundle bundle = new Bundle();
bundle.putString("***", SUCCESS);
bundle.putString("FullPathName", mFullPathName);
intent.putExtras(bundle);
sendBroadcast(intent);
2.在Activity中創建一個內部類MyBroadcastReceiver擴展BroadcastReceiver,並在其中實現onReceive方法。
3.在Activity中聲明一個MyBroadcastReceiver類型的成員變數,並注冊:
private MyBroadcastReceiver myBroadcastReceiver;
...
myBroadcastReceiver = new MyBroadcastReceiver();
IntentFilter filter = new IntentFilter();
filter.addAction(BroadcastAction);
registerReceiver(receiver, filter);
4.使用完後要記得釋放
unregisterReceiver(receiver);
註:1和2中的 BroadcastAction要是同一個Action
6. Android系統自帶簡訊廣播問題SMS_STATUS_RECEIVED
你先判斷ac是否等於SMS_STATUS_RECEIVED 等於的話就輸出 xxx 就好了
7. 在android中服務機制來做什麼發簡訊為什麼需要廣播
Service,後台運行,可交互這樣的一個東西。它跟Activity的級別差不多,但是他不能自己運行,需要通過某一個Activity或者其他Context對象來調用。
什麼時候需要Service呢?比如播放多媒體的時候用戶啟動了其他Activity這個時候程序要在後台繼續播放,比如檢測SD卡上文件的變化,再或者在後台記錄你地理信息位置的改變等等,總是藏在後頭的。
Broadcast 實質就是(發送方)並不在意(接收方)接收到廣播時如何處理。Android 中有各式各樣的廣播,各種廣播在Android 系統中運行,當系統/應用程序運行時便會向 Android 注冊各種廣播,Android 接收到廣播會便會判斷哪種廣播需要哪種事件,然後向不同需要事件的應用程序注冊事件,不同的廣播可能處理不同的事件也可能處理相同的廣播事件,這時就需要Android 系統為我們做篩選。
你要了解的是這個方法吧:public void sendTextMessage (String destinationAddress, String scAddress, String text, PendingIntent sentIntent, PendingIntent deliveryIntent)
destinationAddress: 收件人地址
scAddress: 簡訊中心號碼,null為默認中心號碼
sentIntent: 當消息發出時,成功或者失敗的信息報告通過PendingIntent來廣播。如果該參數為空,則發信程序會被所有位置程序檢查一遍,這樣會導致發送時間延長。
deliveryIntent: 當消息發送到收件人時,該PendingIntent會被廣播。p數據在狀態報告的extended data ("p")中。
如果收件人或者信息為空則拋出 IllegalArgumentException 。
8. android里的廣播和通知有什麼區別
1、廣播
android通過廣播來實現不同進程間的通信;對應於廣播(broadcat)還有一個廣播接收器(broadcast
receiver);每個廣播指定了對應的action
、
type等信息,每個接收器根據這些信息來過濾是否自己要接收的廣播
2、通知
Notification是Android中常用的一種通知方式,當有未讀簡訊或者未接電話的時候,屏幕的狀態欄就會有提示圖標,這時可以下拉狀態欄來讀取通知。在使用微信的時候(微信在後台運行),如果有新消息時便會發出聲音提示,狀態欄也有相應的微信提示
3、安卓中廣播和通知的關系
廣播是接收請求,通知是把處理結果告訴用戶
9. Android中定義了一個接收簡訊的廣播類,但是裡面的OnReceive方法始終沒有執行,求解
雖然我眼拙沒有看出什麼不對勁,網上博文寫的基本也如此,但也有點心得:
從簡訊接收後系統發出廣播,雖然是非同步廣播,但是實際上到你寫的接收器接收到並處理之間可能會有一段較長的時間,可能是幾秒;
先檢查接收器是否注冊成功。
10. 請教高人,安卓在系統發送簡訊成功之後會發送什麼廣播
你需要自己
寫一個Receiver
比如:SMSReceiver
需要在mainfest
.xml
文件里進行配置
這個Receiver
這樣你就可以監聽簡訊發送後系統給你發送的廣播了自動
重新定義一個Receiver
吧