Ich verwende Gson mit seiner so mächtigen und einfachen API, um Objekte zwischen Aktivitäten zu senden,
Beispiel
// This is the object to be sent, can be any object
public class AndroidPacket {
public String CustomerName;
//constructor
public AndroidPacket(String cName){
CustomerName = cName;
}
// other fields ....
// You can add those functions as LiveTemplate !
public String toJson() {
Gson gson = new Gson();
return gson.toJson(this);
}
public static AndroidPacket fromJson(String json) {
Gson gson = new Gson();
return gson.fromJson(json, AndroidPacket.class);
}
}
2 Funktionen, die Sie zu den Objekten hinzufügen, die Sie senden möchten
Verwendung
Objekt von A nach B senden
// Convert the object to string using Gson
AndroidPacket androidPacket = new AndroidPacket("Ahmad");
String objAsJson = androidPacket.toJson();
Intent intent = new Intent(A.this, B.class);
intent.putExtra("my_obj", objAsJson);
startActivity(intent);
Empfangen in B
@Override
protected void onCreate(Bundle savedInstanceState) {
Bundle bundle = getIntent().getExtras();
String objAsJson = bundle.getString("my_obj");
AndroidPacket androidPacket = AndroidPacket.fromJson(objAsJson);
// Here you can use your Object
Log.d("Gson", androidPacket.CustomerName);
}
Ich verwende es fast bei jedem Projekt, und ich habe keine Leistungsprobleme.
0 Stimmen
@UMMA - Sie brauchen Ihre Fragen nicht ständig als "Community Wiki" zu markieren. Schauen Sie hier nach: meta.stackexchange.com/questions/11740/
1 Stimmen
@Paresh: Der von Ihnen angegebene Link ist defekt. Könnten Sie bitte eine Alternative angeben?
0 Stimmen
Mögliche Duplikate von Wie man in Android ein Objekt von einer Aktivität an eine andere weitergibt
0 Stimmen
Sehen Sie sich diese Antwort an. stackoverflow.com/questions/8857546/
0 Stimmen
Ich habe eine einfache und elegante Methode gefunden stackoverflow.com/a/37774966/6456129