У меня есть работающий сервер, который уведомляет пользователя уведомлением в строке состояния, которое открывает мою основную активность, как я могу передать данные своей активности через это намерение?
Использовать намерение для отправки данных в мою активность
Ответы (2)
Используйте Intent.putExtra(..)
:
intent.putExtra("keyName", "somevalue");
Этот метод перегружен и принимает в качестве второго аргумента различные типы: int, byte, String, различные массивы.
Чтобы получить данные, используйте соответствующий метод getXYZExtra(). Для строки это:
getStringExtra(String keyName)
person
Peter Knego
schedule
06.11.2010
но как мне получить данные в моей деятельности? какое событие вызывается, когда и активность получает намерение?
- person Mars; 06.11.2010
getIntent()
определяется в Activity. Вы можете вызывать его где угодно внутри активности, а также внутри onCreate()
- person Peter Knego; 06.11.2010
Хорошо, я думал, что вызываю getExtras не в том месте, но моя ошибка заключалась в том, что я не делал «this.getIntent()», спасибо за вашу помощь.
- person Mars; 06.11.2010
Основная деятельность
Intent intent = new Intent(MainActivity.this,SecondActivity.class);
intent.putExtra("extra_text", string);
startActivity(intent);
Вторая активность
String text = getIntent().getStringExtra("extra_text");
person
LifeInstructor
schedule
08.10.2012
Идеальный ответ. Коротко и с необходимым.
- person Shudy; 13.07.2015