2011-04-01 79 views
0

我想了解如何閱讀Android上的短信發件箱。閱讀收件箱有很多教程和指南,但這些都是使用監聽器。 在這裏看到: http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/os/SmsMessageReceiver.htmlAndroid閱讀短信發件箱消息

的問題,那就是它採用public void onReceive(Context context, Intent intent)和使用的東西像intent.getExtras()並使用context隨着光標的一部分。 我想閱讀發件箱,所以我不會發送任何意圖或使用任何聽衆。我所要做的就是點擊主要活動的Read按鈕,然後加載第二個活動,顯示發件箱中所有消息的主體(或者使用SENT標誌)。

有沒有辦法做到這一點,我可以只讀所有的短信文本?

就像我說的,我正在閱讀發件箱,所以不能依賴一個事件觸發此按鈕而不是點擊按鈕。

感謝您的任何幫助。

PS我能夠使用不同的方法(而不是SmsMessage)讀取單個發件箱文本,其中我使用了URI的內容:// sms/sent並使用光標嘗試通過它們,但我只能從那裏獲得第一個發送的消息,因此循環必須有一些東西。

回答

1

閱讀收件箱有很多教程和指南,但這些都是使用監聽器。

有問題的教程沒有閱讀SMS收件箱。 Android SDK不支持閱讀SMS收件箱。

我想閱讀發件箱,所以我不會發送任何意圖或使用任何聽衆。

Android SDK不支持閱讀您認爲的短信發件箱。

我能夠讀取使用不同的充方法的單發件箱文本(不與SmsMessage)其中,I中使用的URI到內容://短信/發送

這不是的Android的一部分,操作系統或SDK。這是作爲Android開源項目一部分的Messenger應用程序的未記錄和不受支持的功能。此應用程序可能不在所有設備上。它可能不是用戶選擇的SMS客戶端。 Google可能會在將來隨時修改它。 You have been told by Google not to use it

+0

我知道人們說過不宜使用URI內容,但對於所有這些定製的短信應用程序,如ChompSMS和Handcent,肯定它至少意味着它可以完成?或者它只是鍋運氣哪個設備運行應用程序? – eoinzy 2011-04-01 23:08:07

+0

@eoinzy:希望他們保持自己的發件箱概念,而不是假設該內容提供者的存在。 – CommonsWare 2011-04-01 23:17:43

0

您可以閱讀OutBox草稿消息,但爲了您的應用程序必須是默認的Sms應用程序,如果您想檢查下載2個短消息應用程序並檢查第二個應用程序對話(現在默認爲nit),您將無法看到然後使第二個應用程序默認,你將能夠看到第二個應用程序中的所有內容,但不能在第一個應用程序中看到。