APK ファイルを誰かの電子メールに送信すると、その人はそのファイルを 100 万回コピーして、100 万回販売することができますが、私はそれを望んでいません。
プログラムのコピーが機能しないように、Java ファイル、manifest.xml、またはその他の場所に保護を統合するにはどうすればよいですか? または、APK ファイルにワンタイム パスワードを設定できますか?
できません。これを達成する方法はありません。不要な配布は、apkを誰かに電子メールで送信するときに取らなければならないリスクです。
あなたができる最善のことは、誰かにそれを電子メールで送るたびに別々のapkをコンパイルし、それに一意のコードを入れることです。アプリを最初に起動したときに、オンラインサーバーに登録してもらいます。誰かが同じコードを再度登録しようとした場合、apkが他の誰かに送信されたか、複数のデバイスにインストールされたことがわかります。このような場合、サーバーは、その特定のコードがすでに使用されていることをアプリに通知し、動作を拒否させることができます。
このアプローチの欠点:
要するに、これを行うための絶対確実な方法はありません。
ユーザーがアプリケーションをインストールできるようにする場合、それを行う方法はありません
考えられる回避策は、DeviceID をテストし、DeviceID が承認されている場合にのみアプリを続行できるようにすることです。
明らかに、コードでこれを管理する必要があり、多数のデバイスを承認する必要がある場合、これは非常に面倒になる可能性があります。さらに、すべてのデバイスにDeviceID があるかどうかはわかりません
固有の Android デバイス ID はありますか?を参照してください。これについての詳細は
次のオプションのいずれかを使用して、数行のコードを追加するだけのカスタム APK を作成します。
アプリの起動回数をカウントして、それを超えたらメッセージを表示して閉じてみませんか?
または、コード内のトライアル日数を確認することもできます。MainActivity/Base Activity チェックで、今から 5 日後に、超過した場合はアプリを終了します。
この詳細はいつでもアプリの共有設定に保存して、それとクロス チェックできます。