AndroidRuntime-Fehler: Paket: Wert kann nicht gemarshallt werden

Ich versuche, mithilfe der intent.puExtra-Funktion eine HashMap an eine neue Aktivität zu übergeben. Beim Durchlaufen des Debuggers scheint das Hinzufügen der HashMap kein Problem zu sein. Wenn jedoch startActivty () aufgerufen wird, wird ein Laufzeitfehler angezeigt, der besagt, dass Parcel den Wert com.appName.Liquor nicht marshallen kann.

Liquor ist eine benutzerdefinierte Klasse, die ich erstellt habe, und ich glaube, dass sie in Kombination mit einer HashMap das Problem verursacht. Wenn ich statt meiner HashMap eine Zeichenkette übergebe, wird die nächste Aktivität problemlos geladen.

Hauptaktivitä

lv.setOnItemClickListener(new OnItemClickListener() {
   public void onItemClick(AdapterView<?> parent, View view,
      int position, long id) {

      String cat = ((TextView) view).getText().toString();
      Intent i = new Intent(OhioLiquor.this, Category.class);
      i.putExtra("com.appName.cat", _liquorBase.GetMap());
      startActivity(i);

Liquor Class

public class Liquor
{
public String name;
public int code;
public String category;

private HashMap<String, Bottle> _bottles;

public Liquor()
{
    _bottles = new HashMap<String, Bottle>();
}

public void AddBottle(Bottle aBottle)
{
    _bottles.put(aBottle.size, aBottle);
}
}

Unteraktivität

public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);

    HashMap<Integer, Liquor> map = (HashMap<Integer, Liquor>)getIntent().getSerializableExtra("com.appName.cat");

    setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, GetNames(map)));

    ListView lv = getListView();
    lv.setTextFilterEnabled(true);

Wenn der Laufzeitfehler vorliegt, wird er niemals in die Subaktivitätsklasse aufgenommen. Ich bin mir also ziemlich sicher, dass das Problem beim Hinzufügen der HashMap zur Absicht besteht, und basierend auf dem Fehler glaube ich, dass meine Liquor-Klasse die Ursache ist, aber ich kann nicht herausfinden, warum.

Ihre Hilfe wird sehr geschätzt. Vielen Dank

Antworten auf die Frage(2)

Ihre Antwort auf die Frage