2011-08-02 9 views
0

私はアンドロイドに移植してAndroidアプリでサービスを利用したいと考えているC++に基づいて、既存のアプリを公開していません。私はSTLを使用して、そのアプリを押し上げる。Android Appとオープンソースライブラリ

私の質問は、私はアンドロイドに既存のコードを移植したいのですが、静的または共有オブジェクトとしてコンパイルすることはできますか?

私はまた、オープンソースのライブラリを使用するためのライブラリとしてAndroidにネイティブC++コードを移植するためのAndroid NDKを使用して、Javaの

である私のアンドロイドアプリケーションでそれを使用しますが、することを計画し、私が使用している場合して

それらは私のアンドロイドアプリのコードで私も私のライブラリのソースコードをリリースする必要がありますか?

パブリックアプリとしてリリースする場合、これらのライセンスは通常どのように動作するのか分かりません。私は共有ライブラリとしてコンパイルするかどうかは分かりますが、私はうまくいくはずですが、アプリのアップロードには何か問題があると思いますか?

2番目に、コンパイルすると静的ライブラリとして、私は私のソースオブジェクトファイルをリリースする必要がありますね?

私は自分のソースをリリースするのが大変ではありません。どうすれば効果的ですか?どのパスを(共有/静的オブジェクト)とする必要がありますか?それとも、アプリケーションはちょうどインストーラであり、それはどんな携帯電話でも正常に動作するはずですから問題はありませんか?私はそれを行う場合、オープンソースの違反の問題がありますか?あなたが最初に... Javaのを学び、何のSTLとブーストのライブラリが存在しないことを把握する必要があり

おかげ

+4

私は、プログラミングやソフトウェア開発ではなく、ライセンスや法的問題に関するトピックであるため、この質問を議論の対象外としています。 [ここをクリック](http://meta.stackoverflow.com/questions/274963/questions-about-licensing/274964#274964)および[ここ](http://meta.stackexchange.com/questions/139804/can-トピックについてのライセンス供与に関する質問)、詳細については[ヘルプ]を参照してください。 – JasonMArcher

答えて

1

Javaエコシステムには、より生産的に使用できる独自のオープンソースライブラリ群があります。アプリにそれらを含めることは、正しいフォルダに.jarファイルのセットをコピーしてビルドパスに追加するのと同じです。

ライセンスについては、ほとんどの問題にGPLライセンスライブラリが付属しています。 GPLライセンスでは、GPLコンポーネントを使用して作成されたアプリケーションもオープンソースで、GPL(有名な「伝染性のある」ライセンス)でライセンスされている必要があります。

とにかく、この完全なオープンソース要件が採用を制限するため、GPLはほとんどライブラリとして使用されません。 LGPLと呼ばれる派生したGPLライセンスがあります。これはあなたのアプリをオープンソース化する必要はありません。

ライブラリは多くの場合、許可されたライセンスの下で配布されることが多く、ほとんどの場合、アプリにそれらを含めることは問題になりません。

+0

私の悪い、私はまだAndroid NDKと考えていました。私たちは既存のコードをaLibraryとして移植して、Javaのメインアプリケーションにインポートすることができます。 – devgp

+0

ライセンスパートにお役立ていただきありがとうございました。だから、私はコンパイルすることができ、静的にリンク/私のC + +ライブラリに共有、それは重要ではないだろうと思うboostライセンスは非常に簡単だったので。 LGPLの下にあります。情報のThnx再び – devgp

0

あなたの質問を少し整形してください。既存のアプリケーションでオープンソースライブラリを使用している場合は、Android用アプリケーションのビルドにも同じルールが適用されます。

ポスターの説明と同様に、C++ライブラリとAndroid開発に必要なJavaライブラリを混同しないでください。 AndroidのSDKを使用してAndroidを実行し、Androidの世界でオープンソースライブラリを探している場合は、list hereがあります。

+0

それを指摘してくれてありがとう、私は私のポストを少し編集したと思う。いいえ、私はあなたのアンドロイドアプリで私の既存のC + +コードを使用していた場合、私はまだstdC++をコンパイルしてリンクする必要がありますどちらかの静的/共有ライブラリの権利として、JavaとC + +のオープンソースのlibsを混乱させていませんか?どうすればいい? – devgp