2016-11-30 42 views
1

我有一個SMS應用程序,可以維護自己的SMS數據庫,與消息和其他典型SMS應用程序使用的主系統數據庫分開。我想這樣做的目的是當另一個應用程序發送短信(例如Google Now,或MightyText或其他無GUI發送短信的方法)時,該消息將導入到我正在處理的應用程序中。爲此,我需要在發送SMS和/或將發送的SMS保存到系統SMS數據庫時觸發操作。當另一個應用程序發送/保存SMS時,在Android應用程序中觸發操作?

有沒有廣播意圖我可以註冊來聽這個?如果沒有,那麼最低的開銷方式是什麼?

IFTTT和Tasker應用程序可以偵聽發送的短信,所以我知道這是可能的。不幸的是,這兩者都不是開源的,所以我不明白他們是如何做到的。

+0

我真的很感謝downvoters的一些反饋。我很樂意重述這個問題,或者提供更多細節,如果這會有所幫助的話。 – Sparr

回答

0

您是否看過Telephony SMS Intents?似乎有一些Promissing像RESULT_SMS_HANDLED

另一種可能性是觀察短信收件箱(Telephony.Sms.Inbox.CONTENT_URI)的內容提供商中的更改。但這是我認爲只有當你的應用程序運行時纔可能。

+0

RESULT_SMS_HANDLED不是一個意圖,它只是SMS _ * _ ACTION意圖的一個可能的結果代碼。 – Sparr

+0

有什麼辦法可以請求更改內容提供者的通知嗎?投票似乎超級不雅。 – Sparr

+0

似乎有這樣的例子在這裏的答案:http://stackoverflow.com/questions/9520277/practical-way-to-find-out-if-sms-has-been-sent/9659025#9659025 – shtolik

相關問題