我有一個非常簡單的應用程序,我試圖做。我想要做的是有一個應用程序可以發送多個文本到1個或更多的收件人。我已經完成了這一步,但似乎並沒有發送全部文本。強制應用程序等待發送一條新的短信
我認爲問題在於文本正在快速發送。我試圖讓程序等一秒鐘,但是當我輸入「Thread.sleep(1000);」時我收到一個錯誤,說Eclipse中有一個未處理的異常。有沒有解決的辦法?我真的需要爲這幾行代碼做一個try/catch嗎?如果我確實需要try/catch,那麼爲這個應用程序編寫它的最佳方式是什麼?
此外,作爲一個說明,我允許在更高版本中定製睡眠時間,因此請記住您的回答。
Integer i = 0;
while (i < numTextSend)
{
sms.sendTextMessage(number, null, message, null, null);
Thread.sleep(1000);
i++;
}
[編輯]更新的代碼:
final Button confirm = (Button) findViewById(R.id.confirm);
confirm.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
//Grab values from UI
String number = String.valueOf(mNumber.getText().toString());
Integer numTextSend = Integer.parseInt(mNumTextSend.getText().toString());
String message = String.valueOf(mMessage.getText().toString());
//Send SMS message(s)
SmsManager sms = SmsManager.getDefault();
Integer i = 0;
while (i < numTextSend)
{
sms.sendTextMessage(number, null, message, null, null);
//Make App wait 1 second
i++;
}
}
});
感謝您的回覆,我只是不知道如何實現這一點到我的代碼目前。我用更多的代碼更新了我的問題。 – Jim 2012-03-14 18:15:02
'h.postDelayed(r,1000);'應該在那裏兩次? – Jim 2012-03-15 01:34:18
沒有。看看我編輯的答案 – 2012-03-15 06:36:36