Доля ARCore Renderable между действиями

Как я могу разделить Sceneform Renderable между действиями?

У меня есть приложение, где пользователь может прочитать информацию об объекте, который, вероятно, связан с визуализируемым. В действии A, если рендеринг связан, щелчок по кнопке запускает действие B ARCore для просмотра и взаимодействия с рендерингом.

Я загружаю рендеринг перед асинхронно из базы данных в действии А по двум причинам. Во-первых, чтобы иметь это в памяти, а во-вторых, чтобы узнать, есть ли рендеринг, чтобы показать.

Прямо сейчас, Serializable Parcelable не реализован Sceneform Renderable, и из-за его сложности я не могу создать собственный класс, способный сделать это.

Моя попытка состояла бы в создании статического класса, в котором я сохраняю визуализируемый объект в памяти для действия A, startActivity B, а затем считываю визуализируемый объект Sceneform в упражнении B и удаляю запись из класса статического хранилища. Но вопрос в том, существуют ли более эффективные способы совместного использования Sceneform Renderable или любого другого нестандартного сложного объекта между действиями?

Я хочу избегать времени ожидания в действии B, где визуализируемый объект должен быть мгновенно доступен, потому что пользователь должен иметь возможность просматривать его, потому что он прибывает из действия A.

1 ответ

Решение

Использование класса singelton со статическими методами put и get для доступа к частному hashmap делает свое дело.

В методе put несериализуемые, неразборчивые ссылки должны быть помещены в хэш-карту с ключом, в моем случае, с идентификатором из базы данных. Тогда непериализуемые, неразборчивые ссылки внутри объекта, которым вы хотите поделиться между действиями, должны быть установлены в нуль.

Когда другое действие началось, и ваш объект для совместного использования прибыл, используйте его ключ для извлечения не сериализуемых, не подлежащих обмену ссылок из хэш-карты и (пере) установки их ссылок как полей в объекте, которым вы хотите поделиться.

Теперь можно делиться пользовательскими объектами с не сериализуемыми, неразборчивыми полями между действиями.

Другие вопросы по тегам