I'm attempting to make a simple homebrew game engine/framework in android. I have the "engine" as a library project that handles all of the graphics rendering, game activity, and whatnot. Essentially, the library project has a class GameMain which has a background image, an array of drawables, and a few functions (the most important is a run() function). The projects that use this library extend this class with their own unique run() function. The idea is that games that use the engine start with their own activity, launch the GameActivity from the library, and pass their unique GameMain child object into the library, which should run the unique run() method thanks to polymorphism.
Getting this to work, however, has been a struggle. I originally attempted to make the GameMain Serializable, which didn't appear to work. I'm now attempting to make it a Parcelable, but it does not appear to run the child objects run() function when called from the library. I'm wondering, are Parcelable objects actually capable of sending Object methods across activities? Am I going about this the wrong way, or am I just having some other weird bug I have not uncovered?