С ростом Flash проекта состоящего из раздельных .swf, соединенных между собой через LocalConnection, может возрасти потребность в размерах передаваемых данных. К примеру, это может быть обмен данными присланных сообщений между игрой и отдельным приложением сообщений.
Проблемы начинаются когда передаваемых данных становится больше 40 Кб, появляется ошибка и приложение перестает нормально работать.
Напомню, что объем данных, которые можно передать как параметры методом send, ограничен 40 килобайтами.
Есть несколько выходов из такой ситуации:
- Использовать Local Shared Objects;
- Передавать данные с помощью JavaScript;
- Передавать данные по LocalConnection разбив на части.
Первые два пункта требуют больших изменений чем последний. Поэтому с минимальными затратами реализуем передачу данных по частям которые будут меньше 40 Кб.
Структура пакета:
- unsigned int — длина данных всего сообщения;
- unsigned int — длина данных объекта;
- данные сериализованного объекта.
Что бы правильно собрать все данные напишем обертку для клиента LocalConnection:
Читать полностью »