Flex オンライン アプリケーションをデスクトップ アプリケーションに変えるにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/6344756

質問

私たちは、blazeDataservice を使用してバックエンドに接続する flex (cairgorn)+spring+blazeDataservice アプリケーションで数年間作業してきましたが、今ではかなり大きくなり、負荷がかかりすぎるため、それを使用する人は通常、定期的に使用するためです。

私の国のインターネット帯域幅は改善されていません、実際には悪化しています。そのため、アプリは大きくなり、帯域幅は悪化し、そのためロードは日に日に遅くなります。

どうすればクライアントを他の人のコンピュータにインストールできるだろうかと考えていました。Flex オンライン アプリを書き換えることなくデスクトップ アプリに変えることになるのです。誰かが私を正しい方向に導いてくれるだけでいいのですが、私は 2 つの選択肢を考えていました。

1.- adobe air に変えることはできますか?Adobe Airデスクトップではないのですか?

2.- もしかしたら、人々のデスクトップで動作するフラッシュ?

現在と同じようにホスト Spring バックエンドに対して動作するには、すべてが必要です

どうもありがとうございます!

役に立ちましたか?

解決

ただ明確にします:

実行されるクエリではなく、アプリ (SWF) 自体のサイズが原因である場合、デスクトップ (AIR) バージョンを構築せずに高速化する別の方法は、Flex でモジュールと呼ばれるものを使用することです。

基本的に、アプリを必要な場合にのみロードされる小さな部分に分割します。

デスクトップ (AIR) ルートを選択する場合は、必要な場合にのみサーバーと同期するローカル SQLite データベースを探索して、インターネット接続の問題をさらに軽減することもできます。

もちろん、これにより開発時間は増加しますが、あなたが説明した状況を考えると、それが良い策であるように思えます。

どこから始めればよいかというと、Web からデスクトップ (AIR) アプリに切り替えるのは、メインの MXML タグを (Flex 3 の) mx:Application から mx:WindowedApplication に変更してアプリを起動するだけで簡単です。

フォローアップの質問に応じて更新します:

コードが現在どのように構成されているかが分からない限り、どの程度の書き換えが必要になるかを言うのは困難ですが、大規模な書き換えになるかどうかは疑わしいです。

実験として、次のことをお勧めします。

  1. 新しい Flex アプリケーションを作成します。
  2. 新しいモジュールを作成します。
  3. 単純な MXML と Actionscript をモジュールに追加します。
  4. モジュールのインスタンスをメイン ビューに追加します。
  5. 実行/コンパイル。

機能やコーディングの観点から見ると、モジュールをまったくモジュールにラップしないほうが良いかもしれませんが、モジュールは別の SWF にコンパイルされており、必要に応じて Flex がモジュールのロードを処理します。

それがすべて機能し、意味がある場合は、コードの一部をモジュールに分割し始めて、問題が解決し始めるかどうかを確認します。

他のヒント

Adobe AIR は正しい方法です。これは本質的に 2 であり、多くの場合、Web ではなく AIR に直接、持っているものをそのまま公開することができ、そのまま機能します。ファンシー!

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top