2010-12-15 19 views
1

WebアプリケーションでFlex 3を使用してローカルにデータを格納する方法。バックエンドを使用したり、共有オブジェクトを使用したりしないでください。Flexを使用してローカルにデータを格納する方法は?

私は、Flex 3にData Managementというものがあることを知りました。それはAIRアプリケーション用ではありません。

答えて

4

フレックスデータ管理は、Flex Data Servicesの一部です。これは、サーバーにデータを格納するためのフレームワークとツールセットです(ではなく、Webブラウザーにローカルで)。 Here is a tutorial for using Data Management with a java-based server

Shared Objectsは、ローカル(ブラウザ内)保存用に設計されています。私はあなたがあなたがそれらを使用したくないと言ったことを知っていますが、どうしてですか?それが彼らのためにあります。

が実行可能である唯一の方法は、新しいHTML5データベースストレージ(this S.O. answerを参照)を使用することです。フレックス/フラッシュからアクセスするには、(a)保存/取り出しを行うためのJavaScript関数を書く必要があり、(b)External Interfaceを使用してflex/flashからjavascriptを呼び出す必要があります。

共有オブジェクトの使用を検討することを強くお勧めします。

幸運を祈る!

+0

答えに感謝します。私は、共有オブジェクトはストレージにいくつかの制限があるため、私は共有オブジェクトを考慮しないと言いました。データが共有オブジェクトより多い場合は有用ではありません。とにかくありがとう –

+0

共有オブジェクトのサイズはそれぞれ100kに制限されています。しかし、それらを複数作成することができます。だからあなたは、あなたのデータをチャンクに分割し、チャンクを別々に保存することができます。別の選択肢として、私が言及したHTML5データベースは非常に大きくすることができます。 – Lee

+0

お返事ありがとうございました –

0

あなたのユースケースはわかりませんが、大きなファイルを保存することはできますが、データを保存する場所をユーザーに求めるメッセージが表示されます。これにはFileReference.save()を使用できます。

+0

ユースケースは、eラーニングアプリです。ユーザーがアンケートに回答し、次のボタンをクリックして次の質問に進みます。ユーザーが25人中15人の質問に答え、突然システムが破損したとします。システムが再開したら、私は最初の質問からではなく16からの質問を開始する必要があり、15の質問情報をすべてローカルに保存する必要があります。これがシナリオです。バックエンドを使用せずにこれを行う方法。 –

+1

これは、多くのデータのようには聞こえません。なぜあなたは100kで制限されていますか?これは確かにあなたが言ったことから共有オブジェクトの場合のように聞こえる。このようなユースケース用に作成されました。 –

関連する問題