В приложении для android у меня есть три Activity, Activity1, Activity2, Activity3 все они открываются в таком же порядке. Я пытаюсь передать из Activity1 данные ArrayList в Activity3 не затрагивая при этом Activity2,но это не получается Код Activity1для передачи ArrayList:
ArrayList <String> ar=new ArrayList<>();
Intent i = new Intent(this,Activity2.class);
i.putStringArrayListExtra("text1", ar);
startActivity(i);
Открывается Activity2,в ней мы переходим в Activity3. Код Activity3 для приёма ArrayList из Activity1:
ArrayList <String> url=new ArrayList<>();
url = getIntent().getExtras().getStringArrayList("text1");
Подскажите,как реализовать данный "перескок",что бы данные ушли из Activity1 в Activity3?
У вас в коде в Activity3 в строке url = getIntent()...; вы получаете интент, который вы создавали в Activity2 для старта Activity3. Вы туда похоже ничего не положили, и, соответственно, в Activity3 вы ничего не получите.
Поэтому тут такие варианты:
Для того, чтоб "данные ушли из Activity1 в Activity3" вам нужно и стартовать Activity3 из Activity1;
Поочерёдно тащить нужные данные через каждую активити Activity1 -> Activity2 -> Activity3.
Быть крутым разработчиком и использовать библиотеку EventBus от GreenRobot :)
Сборка персонального компьютера от Artline: умный выбор для современных пользователей