アプリケーションのインストール中に、ランタイムはアプリケーションのバージョンが現在インストールされていないことを確認します。アプリケーションが既にインストールされている場合、ランタイムはバージョンストリングをインストールされているバージョンと比較します。このストリングが異なる場合、ユーザーはインストールのアップグレードを選択できます。 ランタイムは、新しくインストールされたバージョンが古いバージョンよりも新しいことを保証せず、それが異なるバージョンであるということだけを保証します。攻撃者は古いバージョンをユーザーに配布して、セキュリティの弱点をくぐり抜ける可能性があります。 このため、開発者はアプリケーションの実行時にバージョンの確認を行うことをお勧めします。ネットワークで要求されたアップデートがあるかどうかをアプリケーションに確認させるのも良い方法です。その場合、攻撃者がユーザーに古いバージョンを実行させていても、その古いバージョンは更新する必要があることを認識します。また、アプリケーションで明確なバージョン管理スキームを使用すると、ユーザーがダウングレードバージョンをインストールする可能性が低くなります。