手機收發簡訊

2021-05-22 09:37:56 字數 471 閱讀 6861

手機收發簡訊,上一邊文章介紹了簡訊的編碼解碼,在此基礎上編寫了手機收發簡訊的**,收發簡訊都是呼叫at指令集。

原來設計了乙個版本,收簡訊採用serialport類的datareceive事件,使用at+cnmi指令接收短訊息。這樣有個問題,來一條簡訊就會觸發乙個事件,這樣,如果對方發簡訊的頻率過快,特別是使用飛信的情況下,會產生丟失短訊息的情況。

因此,設計了另乙個版本,在收簡訊的時候採用at+cmgl,列出所有簡訊,然後採用正規表示式匹配所有簡訊,讀取之後將其刪除。使用定時器輪詢,這樣,雖然可能簡訊不是實時接收,但是有效地避免了丟失簡訊的情況。

流程:接收時,

開啟串列埠——>啟動定時器——>定時器的tick事件中傳送at+cmgl命令——>讀取所有簡訊,處理每一條簡訊時觸發自己定義的新簡訊事件——>將讀取的簡訊刪除。

傳送時,

開啟串列埠——>使用at+csms傳送簡訊。

**(工具程式集),消費端可以自己編寫:

手機收發簡訊V0 2

上一次發過一篇文章,是使用at指令集對手機簡訊進行收發的。最近使用的時候發現了一些問題,因此進行了一系列的重構與修改。問題 1 有一些編碼沒有支援 2 使用定時器接收簡訊,造成接收簡訊實時性很低 3 所有操作均為同步操作,是應用程式效率降低 調整 1.解碼支援了3種編碼 7位 8位與16位。對應於p...

Android收發簡訊

呼叫簡訊編輯介面 intent smsintent new intent intent.action sendto,uri.parse sms 5556 smsintent.putextra sms body press send to send me startactivity smsintent...

Android學習 收發簡訊

使用android api類庫可以自己實現收發簡訊的功能 資訊的傳送,對mms應用程式來講主要是在資訊資料庫中建立並維護一條資訊記錄,真正的傳送過程交由底層 frameworks層 函式來處理 雖然在android系統中已經存在傳送簡訊的應用,但是如果我們在開發其他應用時需要整合傳送簡訊功能,則很方...