日期: 2010/08/10
**:
android 手機上監聽簡訊有兩種方式:
1、
接受系統的簡訊廣播,操作簡訊內容。
優點:操作方便,適合簡單的簡訊應用。
缺點:來信會在狀態列顯示通知資訊。
androidmanifest.xml :
<
uses-permission
android:name
="android.permission.send_sms"
>
uses-permission
>
<
uses-permission
android:name
="android.permission.receive_sms"
>
uses-permission
>
<
receiver
android:name
=".sms.smsreceiver"
>
<
intent-filter
>
<
action
android:name
="android.provider.telephony.sms_received"
/>
intent-filter
>
receiver
>
code :
packageorg.anymobile.demo.sms;
importandroid.content.broadcastreceiver;
importandroid.content.context;
importandroid.content.intent;
importandroid.telephony.gsm.smsmessage;
importandroid.util.log;
publicclasssmsreceiverextendsbroadcastreceiver }
} publicfinalsmsmessage getmessagesfromintent(intent intent)
bytepdus =newbyte[pduobjs.
length
];intpducount = pdus.
length
; smsmessage msgs =newsmsmessage[pducount];
for(inti = 0; i < pducount; i++)
returnmsgs; }
} 2、
應用觀察者模式,監聽簡訊資料庫,操作簡訊內容。
優點:可以攔截來信在狀態列的顯示通知,適合作簡訊攔截。
缺點:可以發展成 mu ,在後台悄悄的收 / 發簡訊。
例項如下:
systemeventreceiver :收到開機啟動 ok 的廣播後,啟動 bootservice 服務;收到應用傳送簡訊的 intent 後,呼叫系統介面傳送簡訊
bootservice :開啟服務後,開啟簡訊***
smsobserver :資料觀察者,監聽簡訊資料庫
smshandler :簡訊處理器
androidmanifest.xml :
<
uses-permission
android:name
="android.permission.read_sms"
>
uses-permission
>
<
uses-permission
android:name
="android.permission.write_sms"
>
uses-permission
>
<
service
android:name
=".bootservice"
android:label
= >
<
intent-filter
>
<
action
android:name
="org.anymobile.test.service.imichat"
/>
<
category
android:name
="android.intent.category.default"
/>
intent-filter
>
service
>
<
receiver
android:name
=".systemeventreceiver"
>
<
intent-filter
>
<
action
android:name
="android.intent.action.boot_completed"
/>
intent-filter
>
receiver
>
code :
packageorg.anymobile.demo.sms;
importandroid.content.contenturis;
importandroid.content.context;
importandroid.content.intent;
importandroid.net.uri;
importandroid.os.handler;
importandroid.os.message;
importandroid.util.log;
publicclasssmshandlerextendshandler
publicvoidhandlemessage(message message) }
packageorg.anymobile.demo.sms;
importandroid.content.contentresolver;
importandroid.database.contentobserver;
importandroid.database.cursor;
importandroid.os.handler;
importandroid.os.message;
importandroid.util.log;
publicclasssmsobserverextendscontentobserver
{publicstaticfinalstring
tag =
"smsobserver";
privatestaticfinalstring
projection
=newstring
{ sms.
_id ,
//0 sms.
type
,//1
sms.
address
,//2
sms.
body
,//3
sms.
date
Android手機上的Logcat
最近開發電池方面的軟體,有時需要測試usb線被拔下後軟體的狀態,但是一旦拔下了,就看不到logcat的輸出,還好,自己能夠寫乙個手機上的logcat,那樣即使拔下了usb線,也能隨時看。簡介如果您是android程式設計師,您一定離不開logcat,但測試總會遇到一些不能連線usb資料線的時候,怎麼...
監聽Android手機的呼叫狀態
telephonymanager作為乙個service介面提供給使用者查詢 相關的內容,比如imei,linenumber1等。通過下面的 即可獲得telephonymanager的例項。telephonymanager mtelephonymgr telephonymanager this get...
在android手機上執行adb
本篇是 小公尺2s android 4.1.1 miui 5裝置上執行adb的過程中遇到的問題的記錄,供以後參考。1.emulator 5554 offline 手機上有個adb命令,system bin adb,版本是1.0.31。adb start server啟動服務,用adb devices...