web-dev-qa-db-ja.com

商用(無料ではない)AndroidアプリケーションにjTransformsを使用しますか?

JTransformsを使用してFFTとInverseFFTを計算するアプリケーションを開発しています。

そのアプリケーションをPlayストアで販売する予定です。

JTransformsライブラリは、MPL/LGPL/GPLトライライセンスでカバーされています。

それは、アプリケーションのソースコードをコミュニティに開示する必要があるということですか?それは、オープンソースライブラリを使用して非フリーアプリケーションを販売できないことを意味しますか?

ScissDSPライブラリがLGPLライセンスの下でJTransformsを使用している次のリンクを見つけました:

https://github.com/Sciss/ScissDSP/blob/master/licenses/JTransforms-License.txt

それは、MPL/LGPL/GPLが一種のピック 'n'ライセンスのタイプを選択することを意味しますか?

1
madLokesh

ウィキペディアマルチライセンスの説明 言います:

ソフトウェアがマルチライセンスである場合、受信者は、ソフトウェアを使用または配布する条件を選択できます。ディストリビューターは、どちらのオプションにも料金を適用する場合と適用しない場合があります。

この件についての私の個人的な把握から( [〜#〜] ianal [〜#〜] そして私はライセンスに非常に慣れていません):

MPLライセンスの条件の下でライブラリを使用します:

  • MPLは最も制限が少ないです。アプリ内で使用されているライブラリを静的(および動的)にリンクして、料金を請求することができますなしアプリのソースを開示する必要はありません。静的リンケージとは、ライブラリを好きなようにインポートできることを意味します(ライブラリをjarファイルとしてインポートできます。コピー&ペーストJava =ソースファイルをプロジェクトに直接インポートします。動的リンクとは、jarがパックされたバージョンのライブラリにリンクすることを意味し、アプリのユーザーはそのjarを置き換えることができる必要があります。
  • 変更しない(静的/動的)リンクライブラリのソースコードを公開する限り、ソースコードを開示する必要はありません(ライブラリの拡張クラス、インターフェイス、または呼び出しメソッド/コンストラクタは- 変更なし)。
  • ただし、リンクされたライブラリのソースコードを変更するの場合は、変更されたソースコードを同じライセンスで公開にする必要があります。アプリ全体のソースコードを開示する必要はありません。代わりに、ライブラリを好きなように変更し、そのパブリックバージョンをホストして、アプリで変更したライブラリをインポートします。変更したライブラリが実際にはnew MPLライセンスのライブラリであることに注意してください。
    • 変更したライブラリのgithubでフォークをホストし、プロジェクトのルートに[〜#〜] notify [〜#〜]ファイルを追加して、このフォークであることを確認します。問題のライブラリの修正バージョンです。元のライブラリに対する変更を含むプルリクエストを送信するとさらに良いでしょう。PRがマージされた場合、変更を含む元のライブラリの新しいバージョンをインポートし、フォークを削除すると、一般の人々はあなたの恩恵を受けることができます。将来の変更。

LGPLまたはGPLライセンスの条件の下でライブラリを使用しません:

  • LGPLは、動的リンケージと、使用されているライブラリを別のバージョンに置き換える機能に関するものです。アプリを1つの.apkファイルにパックすることを考えると、ユーザーはどのようにしてJTranformsを置き換えることができますか?
  • GPLは、プロプライエタリライセンスの下でソフトウェアをリリースすることを許可していません。あなたは請求できますお金がかかりますが、アプリはGPLライセンスを取得している必要があり、fullソースコードを公開する必要があります。

結論
JTrasnformsを変更せずに呼び出すと仮定すると、心配することなくJTransformsを使用できます。 MPL条件下でJTransformsを使用することを認めるアプリにaboutページを含めます(元のJTransformsの著作権とライセンスへのリンクを含めます)。それでおしまい。
私の発言が正しいかどうかは100%確信できません。JTransformの作成者に直接連絡して、これができるかどうか尋ねます。

2
mucaho