Обновить пользовательский интерфейс после получения SMS - PullRequest
0 голосов
/ 11 сентября 2010

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

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

1 Ответ

4 голосов
/ 11 сентября 2010

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

Другой способ - использовать ContentObserver для content://sms/, но это не рекомендуется, если вы не уверены, что приложение обмена сообщениями перехватит 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
}
...