Используя библиотеку Google Gson, вы можете передавать объект другим действиям. Фактически мы преобразуем объект в виде строки json, а после перехода к другому действию мы снова преобразуем его в объект, подобный этому
Рассмотрим класс бинов, подобный этому
public class Example {
private int id;
private String name;
public Example(int id, String name) {
this.id = id;
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Нам нужно передать объект класса Example
Example exampleObject=new Example(1,"hello");
String jsonString = new Gson().toJson(exampleObject);
Intent nextIntent=new Intent(this,NextActivity.class);
nextIntent.putExtra("example",jsonString );
startActivity(nextIntent);
Для чтения нам нужно выполнить обратную операцию в NextActivity
Example defObject=new Example(-1,null);
//default value to return when example is not available
String defValue= new Gson().toJson(defObject);
String jsonString=getIntent().getExtras().getString("example",defValue);
//passed example object
Example exampleObject=new Gson().fromJson(jsonString,Example .class);
Добавить эту зависимость в gradle
compile 'com.google.code.gson:gson:2.6.2'