2012-03-11 66 views
1

在我的應用程序中,我需要從計時器任務發送短信。代碼很簡單:在android上有SMS生命週期嗎?

ArrayList<String> parts = sms.divideMessage(message); 
sms.sendMultipartTextMessage(phone_numbers[i], null, parts, null, null); 

每個短信都不同,因爲有時間戳。所以文字看起來像是「10:20 - blah blah」

但是!目標電話只收到第一條消息。爲了解釋我的意思,讓發送應用程序每分鐘發送一條消息。運行10分鐘,發送10條消息(10:20,10:21,10:22 ... 10:29)。目的地電話收到10條消息,但所有消息都是相同的,並且消息是發送的消息(10:20)。 Eclips中的CatLog顯示正確組成的「消息」(時間戳不同)。

也許發生這種情況是因爲我對兩個PendingInstances都使用null,並且應該有一些例程來確認/清除/ cances /第一個短消息發送給第二個和其他人的消息。

請幫幫我!我不知道該怎麼做。

Sender - HTC Desire Z 2.3.3。接收器三星Galaxy 2和諾基亞Lumia 710(WinPhone 7.5)

+0

嗨dzaga,通過使用'parts.size()'首次計算'部件''ArrayList'中的消息數' – 2012-03-11 14:57:34

回答

0

我找到了原因。這不是手機操作系統或型號。這是手機運營商!我從我所在地區的其他兩名運營商處獲得SIM卡。現在我有4個SIM卡的運營商,比如說A,B,C,D。只有當短信從A到C時纔會出現描述行爲.A到B,A到D工作得很好。