Я пытаюсь создать простой движок игры/фреймворка в android. У меня есть "движок" как проект библиотеки, который обрабатывает весь графический рендеринг, игровую активность и многое другое. По сути, проект библиотеки имеет класс GameMain, который имеет фоновое изображение, массив чертежей и несколько функций (наиболее важной является функция run()). Проекты, использующие эту библиотеку, расширяют этот класс с помощью собственной уникальной функции run(). Идея состоит в том, что игры, которые используют движок, начинаются с их собственной деятельности, запускают GameActivity из библиотеки и передают их уникальный дочерний объект GameMain в библиотеку, которая должна запускать уникальный метод run() благодаря полиморфизму.
Чтобы это работало, это была борьба. Сначала я попытался создать GameMain Serializable, который, похоже, не работал. Теперь я пытаюсь сделать его Parcelable, но при вызове из библиотеки он не запускает функцию run() дочерних объектов. Мне интересно, могут ли Parcelable объекты отправлять методы Object во всех действиях? Я иду об этом неправильно, или у меня есть какая-то другая странная ошибка, которую я не обнаружил?
Почему бы не позволить пользователям расширять GameActivity для прохождения своей игры?