Постоянные данные в Actionscript 3?

Какие пакеты и / или классы я хочу изучить, когда я пытаюсь создать программу Flash, которая будет работать на нескольких настольных и мобильных платформах, и я хочу использовать постоянные данные?

Редактировать:

Я работаю над программой, которая позволит людям изучать определенные тексты после ежедневной учебной программы. Текст меняется каждый день, и я хочу, чтобы каждый человек изучал одно и то же. Я намерен экспортировать это в Projectors для Mac/Windows, и я бы хотел, чтобы люди могли использовать его и на мобильных устройствах. Предпочтительно, программа не должна требовать подключения к Интернету.

5 ответов

Решение

Я столкнулся с этой проблемой всего несколько недель назад сам. я нашел в Интернете старый класс as3preferenceslib, почистил его, исправил несколько ошибок, и теперь он отлично работает. Вот моя так тема: AIR 2 - Постоянство данных?

я помню, что было несколько проблем с кодом, но одна, которую я помню, в функции setValue() Preferences.as:

else if (value is int)
        {
        prefItm.value = s_int;
        bytes.writeByte(value);  //change this to bytes.writeInt(value);
        }  

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

Простым подходом был бы стек MySQL/PHP, использующий что-то вроде AMFPHP для обработки связи между Flash и серверной частью. Каждый раз, когда вы вносите изменения в одном клиенте, вы отправляете это изменение на сервер, и оно сохраняется. Затем ваше приложение может проверять сервер каждый раз, когда он начинает, чтобы увидеть, есть ли новые данные.

Имеет ли это смысл? Это довольно широкий ответ, но это довольно широкий вопрос. Если вы знакомы с серверными технологиями, и я неправильно понимаю ваш вопрос, пожалуйста, оставьте комментарий на этот счет, и я посмотрю, смогу ли я вам помочь.:)

Итак, вы по сути просите о платформе разработки приложений Святого Грааля. И вам нужно, чтобы это было легко и синхронизировано на разных платформах без подключения к интернету. Короткий ответ, вы не сможете сделать это в течение какого-то периода времени, который можно охарактеризовать как "короткий" или даже "разумный". Flash не поддерживается на Iphone. Несмотря на то, что основной код можно использовать повторно, вам все равно придется разрабатывать и реализовывать отдельные интерфейсы для настольных и мобильных устройств. Чтобы приложение работало без подключения к Интернету, вам нужно заранее запрограммировать в нем все учебные пособия и надеяться, что ни у кого не настроен календарь устройств.

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

В противном случае вам придется сократить объем или нанять несколько разработчиков / тестеров.

Если вам нужны приложения для настольных ПК с Flash, вам нужно использовать AIR, который предоставляет классы, такие как File и FileStream, для взаимодействия с файловой системой, а также многое другое для взаимодействия с ОС.

Adobe AIR 2.5 поддерживается на настольных ПК, Android и iOS (возможно, и на других). В отличие от веб-страницы приложения AIR устанавливаются и не требуют подключения к Интернету. Но иногда, когда соединение доступно, вы можете обновлять тексты и сохранять их в файлах. Вы даже не обязаны использовать Flex, чтобы делать все. Если у вас есть содержимое на основе Sprite в ActionScript, вы можете адаптировать его к WindowedApplication AIR, поместив его в rawChildren и масштабировав его с помощью приложения.

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