AndroidRuntime error: Paquete: incapaz de marshal valor

Estoy intentando pasar un HashMap a una nueva actividad usando la función de intento.puExtra. Pasando por el depurador parece que agrega el HashMap ningún problema, sin embargo cuando startActivty () se llama Tengo un error de ejecución que indica que el paquete: incapaz de marshal valor com.appName.Liquor.

Licor es una clase personalizada que he creado, y creo que, en combinación con un HashMap, está causando el problema. Si paso una cadena en lugar de mi HashMap carga la siguiente actividad sin problema.

Actividad principal

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); 

Clase de Licor

 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); } } 

Subactividad

 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); 

Cuando el error de tiempo de ejecución existe nunca lo convierte en la clase de actividad secundaria. Así que estoy bastante seguro de que el problema existe en la adición de la HashMap a la intención, y basado en el error Creo que mi clase de licor es la causa, pero no puedo entender por qué.

Su ayuda será muy apreciada. ¡Gracias!

Su HashMap sí mismo es serializable pero es la clase de la Bottle serializable? Si no, no serializará y lanzará errores en tiempo de ejecución. Haga que la clase Bottle implemente la interfaz java.io.Serializable

  • Android instala apk sin pedir permiso de usuario
  • AddProximityAlert y KEY_PROXIMITY_ENTERING
  • ¿Es posible identificar el modo de comunicación USB mediante programación?
  • Formato correcto de la fecha
  • OutOfMemory Error al intentar girar una imagen dentro de una vista de imagen
  • Custom SimpleAdapter sólo muestra texto de ejemplo Android
  • Android: implementa un temporizador de intervalo de 1 segundo antes de llamar a una función
  • Cómo manejar el valor de retorno de AsyncTask
  • No se puede inicializar AudioEffect (LoudnessEnhancer) en MediaPlayer (API 19)
  • ZXing en Android PDF417
  • Código de versión diferente para APK, aplicación para Android con generación de teléfono
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.