2

Javaアプリケーションの試用版を実装する方法についてのアイデアを探しています。ほとんどの投稿は、動作を停止するタイミングに時間制限のある試用版ソフトウェアの作成に関するものです。私の場合、機能が制限されたアプリケーションを作成したいと思っています。製品を購入することで、アプリのすべての機能のロックを解除できます。以下の点について、地域の皆様のご意見をいただければ幸いです。この問題のひねりは、MacとWindowsで機能するように、このソリューションを可能な限り一般的なものにすることです。

このソリューションへの私のアプローチには、アプリの起動時に「登録」ファイルの存在を確認することが含まれます。有効な登録ファイルが存在する場合、アプリケーションは完全に機能します。このファイルは、ユーザーのアプリケーションデータディレクトリに配置されます。そうすれば、Windowsでアプリケーションをアンインストールしても、このファイルには影響しません。また、Macでは、通常、ユーザーがAppCleanerなどのソフトウェアをインストールしていない限り、アプリフォルダーを削除しても問題はありません。これにより、〜/ Library /ApplicationSupportフォルダーの下のアプリケーションディレクトリを削除するように求められます。

それで、これが私の最初の質問です。すでにアプリケーションを購入しているユーザーの登録ファイルが削除された場合の対処方法について、コミュニティはどのように考えていますか?

そもそも登録・購入の仕方にも関係していると思います。これは私の2番目の質問です。私はソフトウェアでクレジットカード取引を処理しません、私はむしろペイパルがそれをすべて行うことを望みます。つまり、誰かがソフトウェアを購入した後、ソフトウェアのロックを解除する登録キーを彼らに与えたとしましょう。ここでの私の最初の懸念は、この登録キーを持っている人は誰でもソフトウェアのロックを解除できるということです。どうすればこれを制限できますか?アイデア?

このトピックについては少し議論が必要かもしれませんが、大丈夫だと思います。ご意見をお待ちしております。

編集:この投稿に戻って更新し、TrueLicenseとLicense3jを評価した後、TrueLicenseを使用することを選択したことを伝えたいと思いました。ドキュメントはそれほど簡単ではないので、私はまだそれを使用する方法を理解している途中です。私はサンプルを研究しようとしていますが、うまくいけば、アプリですぐに稼働できるようになります。

4

2 に答える 2

1

最近、私は同じテーマでいくつかの研究をしています。ライセンスマネージャーを実装する必要があることがわかりました。そのためのTrueLicenceオープンソースライブラリと、コードサンプルを含むチュートリアルを見つけました。

... True Licenseまたはその他のJavaライセンスマネージャーライブラリを使用する場合は、次の2つのコンポーネントを作成する必要があります。

  • 顧客がソフトウェアのコピーを購入するたびに新しいソフトウェアライセンスを生成するソフトウェアライセンスサーバー、および
  • ソフトウェアライセンスクライアント。これは、Java/Swingクライアントアプリケーションに埋め込んでライセンスをインストールおよび検証するためのコードです。
于 2012-10-27T15:40:29.920 に答える
0

ソフトウェアが起動するたびにキー/トークンが取得されるlicense.propertiesファイルを使用できます。ソフトウェアには、license.propertiesファイルからキー/トークンを読み取り、それを復号化して値を生成するインターセプターコードが含まれています。したがって、ユーザーがソフトウェアを購入すると、新しいトークンが発行されます。これで、このトークンが復号化されると、通常のトークンとは異なる値が生成されるため、残りの機能のロックが解除されます。

Webで検索してソフトウェアに使用できる暗号化アルゴリズムは数百ありますが、基本的な考え方はこれです。

于 2012-10-27T13:16:11.540 に答える