2010-09-11 3 views
0

Я использую код от http://mobiforge.com/developing/story/sms-messaging-android в качестве справки. Я добавил scrollview, и он показывает добавочный текст после отправки sms.Обновить UI после получения СМС

Однако у меня есть проблема с приложением входящего sms-текста в том же прокрутке. как я могу его решить? мне нужно использовать поток, сервис?

ответ

4

Используйте приемник широковещательной передачи для подключения к входящему SMS. Прогоните намерение (с куском SMS в качестве дополнительного), чтобы запустить свою деятельность (ваша ссылка поможет с этим) ... в onStart() или onNewIntent() вы захватываете Extra и обновите свой UI ...

Другим методом было бы использовать ContentObserver для content://sms/, но это рекомендуется, если вы не уверены, что приложение Messaging перехватит SMS.

Неиспользованный код!

Intent intent = new Intent(context,YourActivity.class); //context from onRecieve(context,intentData) 
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); //required if ur app is not currently running. 
intent.putExtra("SMSBODY",smsbody); //get smsbody from the getMessageBody() (from your link) 
context.startActivity(intent); 

В вашей деятельности ... В onStart() или onNewIntent()

Intent intent = getIntent(); 
if(intent.getStringExtra("SMSBODY") != null) 
{ 
String msg = intent.getStringExtra("SMSBODY"); 
//append msg to scroll view 
} 
+0

все еще возникают проблемы с прохождением намерения. можете ли вы привести несколько примеров? – conandor

+0

@conandor, добавлен код, который может помочь вам лучше, хотя я не мог его протестировать, не имею доступа к моей машине dev. :( – st0le

+0

Да, у меня такой же код, но он продолжает запускать новое текстовое представление после получения сообщения – conandor

Смежные вопросы