Использовать намерение для отправки данных в мою активность

У меня есть работающий сервер, который уведомляет пользователя уведомлением в строке состояния, которое открывает мою основную активность, как я могу передать данные своей активности через это намерение?


person Mars    schedule 06.11.2010    source источник


Ответы (2)


Используйте Intent.putExtra(..):

intent.putExtra("keyName", "somevalue");

Этот метод перегружен и принимает в качестве второго аргумента различные типы: int, byte, String, различные массивы.

Чтобы получить данные, используйте соответствующий метод getXYZExtra(). Для строки это:

getStringExtra(String keyName)
person Peter Knego    schedule 06.11.2010
comment
но как мне получить данные в моей деятельности? какое событие вызывается, когда и активность получает намерение? - person Mars; 06.11.2010
comment
getIntent() определяется в Activity. Вы можете вызывать его где угодно внутри активности, а также внутри onCreate() - person Peter Knego; 06.11.2010
comment
Хорошо, я думал, что вызываю 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
comment
Идеальный ответ. Коротко и с необходимым. - person Shudy; 13.07.2015