19

Google Play ストアは (2012 年 8 月以降) スマート アプリ アップデートと呼ばれる新機能をサポートしており、アプリのアップグレード時に必要な「デルタ」のみをダウンロードできます。

この機能に関する開発者向けのドキュメントが見つからないため、アプリを最適化してこの優れたメカニズムを確実に活用する方法がわかりません。

それで、誰も知っていますか:

  • 開発者にとって知っておくとよい技術的影響 (存在する場合) は何ですか? (新しいフルサイズの APK がユーザーのデバイス上に構築されていると思いますか、それとも変更されていないデータが別の場所に保存されているのでしょうか?)
  • 以前のバージョンからの変更されていないデータの再利用は、特定のリソースに限定されていますか? (フォルダ内のファイルと同様asset)
4

2 に答える 2

22

ステップバイステップ:

  1. デルタエンコーディングアルゴリズムであるGDIFFは、古いアプリケーションバージョンと新しいアプリケーションバージョンの違いを計算するために使用されます。これはサーバー側で行われます。この計算された差は通常、パッチファイルと呼ばれます。
  2. パッチファイルがデバイスに転送されます。
  3. Google Playストアアプリは、パッチファイルと古いアプリケーションを使用して、新しいバージョンのアプリケーションを構築します。
  4. 新しいバージョンがデバイスにインストールされます。

現在、パッチサイズは新しいアプリケーションバージョンサイズの25%です(平均)。したがって、平均で75%のトラフィックを節約できます。トレードオフは、デルタエンコーディング手法に応じて、受信したパッチを展開するためにエンドデバイスでより多くの計算を実行する必要があることです。GDIFFは非常にシンプルで、オーバーヘッドが最小限に抑えられています。差はAPKパッケージ間で計算されます(APK内のすべての情報が使用されます)。前述のように、開発者はこの新機能の恩恵を受けるために何もする必要はありません。

于 2012-10-13T23:03:25.737 に答える
7

ドキュメントがない理由は、外部とのやり取りなしに、Google によってすべて 100% サーバー側で行われるためです。開発者は、この機能についてまったく心配する必要はありません。通常どおりアプリを開発するだけです。

公平を期すために、私はそれが彼らの知的財産の一部であると仮定しているので、彼らがそれがどのように機能するかを誰かに知られたくないと思います.

于 2012-10-12T14:42:42.203 に答える