Utilizzo di jTransforms per un'applicazione Android commerciale (non libera)?

1

Sto sviluppando un'applicazione che utilizza JTransforms per calcolare FFT e InverseFFT.

Sto pensando di vendere quell'applicazione su Play Store.

La libreria JTransforms è coperta da licenza tripla MPL / LGPL / GPL.

Significa che devo divulgare il codice sorgente della mia applicazione alla comunità? Significa che non posso usare una libreria open source per vendere un'applicazione non libera?

Ho trovato il seguente link in cui la libreria ScissDSP utilizza JTransforms sotto licenza LGPL:

link

Significa che MPL / LGPL / GPL è sort-of Pick 'n' Scegli il tipo di licenza?

    
posta madLokesh 20.09.2013 - 11:41
fonte

1 risposta

2

Descrizione della multi-licenza di Wikipedia dice:

When software is multi-licensed, recipients can choose which terms under which they want to use or distribute the software. The distributor may or may not apply a fee to either option.

Dalla mia personale comprensione sull'argomento ( IANAL e sono molto nuovo alle licenze):

Vorrei usare la libreria sotto i termini & condizioni della licenza MPL :

  • MPL è meno restrittivo; puoi avere un collegamento statico (e dinamico) della libreria utilizzata nella tua app per cui addebiti senza che devono rivelare la fonte della tua app. Il collegamento statico significa che puoi importare la libreria come preferisci (puoi importare la libreria come un file jar, puoi anche copiare e incollare i file sorgente java direttamente nel tuo progetto). Il collegamento dinamico implica il collegamento a una versione della libreria piena di contenuti e gli utenti della tua app devono essere in grado di sostituirlo.
  • Finché non esegui non modifica il codice sorgente della libreria collegata (statica / dinamica), non devi rivelare il codice sorgente (estendendo classi, interfacce o metodi / costruttori di chiamata del la libreria è non modifiche ).
  • Tuttavia, se modifica il codice sorgente della libreria collegata, dovresti rendere il codice sorgente modificato disponibile sotto la stessa licenza . Non è necessario rivelare il codice sorgente della tua app completa. Invece, puoi modificare la libreria come preferisci, ospitarne una versione pubblica e importare la libreria modificata nella tua app. Nota come la tua libreria modificata sia in realtà una libreria con licenza MPL nuova da sola.
    • Vorrei solo ospitare un fork su github della libreria modificata e aggiungere un file NOTICE alla radice del progetto, riconoscendo che questo fork è una versione modificata della libreria in questione. È ancora meglio se invii una richiesta pull contenente le tue modifiche rispetto alla libreria originale: se il PR viene unito, ora puoi importare la nuova versione della libreria originale contenente le tue modifiche, eliminare la tua forcella e il pubblico generale trarrà vantaggio dal tuo modifiche in futuro.

Non userei la libreria sotto i termini & condizioni della licenza LGPL o GPL :

  • LGPL riguarda il collegamento dinamico e la possibilità di sostituire la libreria utilizzata con un'altra versione. Considerando che impacchetterai la tua app in un file .apk, in che modo gli utenti saranno in grado di sostituire JTranforms?
  • GPL non consente di rilasciare il software con una licenza proprietaria. Puoi addebitare denaro per questo, ma l'app deve essere concessa in licenza GPL e il codice sorgente completo deve essere reso pubblicamente disponibile.

Conclusione :
Supponendo che chiami JTrasnforms senza modificarlo, potresti usare JTransforms senza preoccupazioni; includi una pagina sulla tua app in cui dichiari di utilizzare JTransforms in condizioni MPL (includi i link alla licenza e copyright JTransforms originale). Questo è tutto.
Non sono sicuro al 100% se le mie affermazioni sono corrette: contatterei direttamente gli autori di JTransform e chiederò loro se è possibile farlo.

    
risposta data 20.01.2014 - 18:31
fonte

Leggi altre domande sui tag