私のクライアントの 1 つは、OEM と契約を結んでいます。彼らのアプリ X は、多くのラップトップにプリインストールされます。このアプリは、Windows 10 ストアから更新プログラムを受け取ります。このアプリ X は、Windows 10 ストアで他のユーザーにダウンロードすることもできます。プレインストール版を使用しているユーザーのみが、3 か月間の無料試用版を受け取る必要があります。
残念ながら、OEM はデバイス ID を提供しておらず、ユーザーは試用版のロック解除コードを取得していません。次の最初の「解決策」を思いつきました。
- プリインストールアプリにはバージョン 1.0.1.0 を使用してください。
- 1.0.0.0 をストアにアップロードします。
アプリが起動し、バージョンが 1.0.1.0 の場合、それはプリインストールされたバージョンとして識別されます。この時点で、アプリの削除後でもこのデバイスを認識するために、デバイス ID をクライアントのサーバーに送信するサーバー呼び出しを行うことができます。
1.0.1.0 未満の任意のバージョンに更新できるため、プリインストールされているアプリの知識を失うことなく、ストア アプリを更新できます。これは、プリインストールされたバージョンがストア バージョンの自動更新によって上書きされないことを意味します (インストールされているバージョン番号がストア バージョンよりも大きいため)。ただし、プリインストール版に重大なバグが検出された場合、そのアプリを更新できなかったり、特定のクラスのユーザーが無料試用を受けられなくなったりします。つまり、Windows 10 が新しいバージョン (たとえば 1.0.1.1) でアプリを更新する前に、まだデバイスでアプリを開始していないユーザー。
これはすべて不必要に複雑に聞こえますが、そうであることを願っています。プリインストールされたバージョンとダウンロードされたバージョンを簡単に見分けられる簡単な方法を誰か思いつきますか?
ありがとう!