有没有人有过这个问题之前,或有人可以解释我发生了什么?Android sentIntent的smsManager.sendTextMessage使UI刷新
代码说明: 以下代码从我的对象ContactFromXML中获取一些信息,并在需要的地方发送一些文本消息。
代码:
PendingIntent pi = PendingIntent.getActivity(this, 0, new Intent(this, MainActivity.class), 0);
for (int i=0; i<contactsCount;i++){
while(contactsIt.hasNext()){
ContactFromXML contact = contactsIt.next();
if (mTeam.equals(contact.mTeam)){
smsMessage = String.format(getResources().getString(R.string.mess_sms_message), contact.mVoornaam, mTimeOfArrival);
smsManager.sendTextMessage(contact.mTel, null, smsMessage, pi , null);
}
}
}
问题: 对于每一个我的代码发送的TextMessage,它像是刷新UI。首先,我想这将是因为从我的UI线程发送的消息,所以我把它放到一个AsyncTask中。但是这并没有解决任何问题。经过一些测试后,我发现这是因为de SentItent'pi'。如果我不使用它,它没有任何问题。
问题: 任何人都可以解释这一点吗?我真的希望使用该功能来查看是否实际发送了文本消息,而不会让用户注意到UI刷新。
你想用'PendingIntent'做什么? – 2013-04-24 10:30:12
PendingIntent在sendTextMessage中设置为sentIntent。后来在我的代码中,我将把一个监听器放在它上面,以确保textmessage实际上被发送。 – 2013-04-24 11:14:15