Данные о намерениях теряются в деятельности - PullRequest
0 голосов
/ 25 января 2019

Да, я знаю, что так просто передать данные с намерением, но внезапно не работает.Дополнительные данные всегда равны нулю.

Кто-то может сказать мне, почему ... потому что я не вижу никакой ошибки.

Я могу отладить код, а когда в startActivity(intent) Я могуувидеть, что намерение имеет дополнительный набор данных правильно.Когда я останавливаю код в getIntent().getExtras() лишние данные теряются

Действие A

Intent intent = new Intent(mActivity, ScreenActivity.class);
intent.putExtra(ArgumentsNamesConfig.IS_PUSH_NOTIFICATION, true);
intent.putExtra(ArgumentsNamesConfig.ARG_ARTICLE, article);
intent.putExtra(MyFirebaseMessagingService.IS_GEO_NOTIFICATION, isGeoNotification);

mActivity.startActivity(intent);

ScreenActivity.class (войти в метод onCreate)

Intent intent = getIntent();
pushNotificationProductId = intent.getBooleanExtra(ArgumentsNamesConfig.IS_PUSH_NOTIFICATION);
isGeoNotification = intent.getBooleanExtra(MyFirebaseMessagingService.IS_GEO_NOTIFICATION, false);
mArticle = intent.getParcelable(ArgumentsNamesConfig.ARG_ARTICLE);

1 Ответ

0 голосов
/ 25 января 2019

intent.putExtra (ArgumentsNamesConfig.IS_PUSH_NOTIFICATION, true);является логическим значением, и вы пытаетесь получить его как STRING (intent.getStringExtra (ArgumentsNamesConfig.IS_PUSH_NOTIFICATION)

попробуйте изменить код тура на этот

Intent intent = getIntent();
    pushNotificationProductId = intent.getBooleanExtra(ArgumentsNamesConfig.IS_PUSH_NOTIFICATION);
    isGeoNotification = intent.getBooleanExtra(MyFirebaseMessagingService.IS_GEO_NOTIFICATION, false);
    mArticle = intent.getParcelable(ArgumentsNamesConfig.ARG_ARTICLE);
...