2011-08-03 12 views
1

私はデバイスアプリケーションに取り組んでいます。デバイス固有のコードをデバイスに展開する予定です。このコンポーネントは、バックエンドサーバから残りのリソース(javascript、imagesなど)を動的に読み込みます。そうすれば、デバイスのアップグレードにあまり依存することなく、アプリをより頻繁にアップグレードすることができます。ちなみに、これは、アプリの承認サイクルを避け、より高速なアップグレードを望む一部のiPhone開発者に似ています。デバイス/サーバ開発でのバージョン管理

デバイスのコードは、デバイスコードをアップグレードする必要があるときに、サーバーコード上の新しいアップグレードを検出できる必要があります。段階的な展開をサポートすることができますデバイスを一度に、等)。

私は確かにいくつかの人々がこれを行っていると思います。これについてあなたの考えとベストプラクティスを分かち合うことができますか?

答えて

0

特定のリソースの新しいバージョンがあるかどうかをサーバーに尋ねるポーリングプロセスをアプリケーションが持つことが1つの方法です。

サーバーは、アップグレードを取得した人と誰(「電話のホーム」の一部に現在のバージョンが含まれる可能性があるか)を完全に制御することができます。これにより、「クライアントのX%アップグレードされた "機能を得る。最初の10%でエラーが多すぎるとロールバックできるように、物事が「ダウングレード」できるようにすることもできます。

これは基本的に、Webブラウザがキャッシュにリソースを持っていても期限切れになっている場合の動作です。彼らは「おい、サーバー、私はあなたからXYZの日付で得たこのリソースを持っています。もしそれが変更されたら、私に新しいものを教えてください。サーバーは「変更されていない」応答、または「ここに新しい応答」応答を返します。

関連する問題