Wynika to z tego, że w Androidzie dwie aktywności to dwa odrębne komponenty, które nic o sobie nie wiedzą i działają niezależnie. One nie współdzielą pamięci i zmiennych. W związku z tym gdy masz jakieś dane w aktywności A i chcesz je przesłać w celu modyfikacji do aktywności B, to żeby je zobaczyć zmodyfikowane w aktywności A, musisz je z powrotem odesłać za pomocą intencji. To się może wydawać dziwne i niezrozumiałe, ale tak działa Android.
Jeżeli użyjesz jakiegoś zewnętrznego nośnika np. zapiszesz dane w pliku, w bazie danych czy od biedy w Shared Preferences, to nie będziesz musiał danych każdorazowo przesyłać i później odsyłać. Wtedy po prostu przy uruchamianiu aktywności A i B odczytasz je, a przy zamykaniu zapiszesz.