2

すべてのコードを含むAndroidアプリプロジェクトがあります。この「アプリ」を、android.developer.comで定義されているライブラリプロジェクトにしました。

その結果、このライブラリプロジェクトを利用した2つの新しいAndroidプロジェクトを作成しました。各新しいプロジェクトの新しいパッケージ名は次のとおりです。

com.myapps.freeapp
com.myapps.paidapp

ご覧のとおり、私はアプリの無料版と有料版を公開しようとしています。

インストールされているアプリが無料版か有料版かをライブラリプロジェクトに伝える最良の方法は何ですか?

4

2 に答える 2

5

これは、ライブラリプロジェクトを使用して無料/有料バージョンを作成する方法を説明している私のブログ投稿からのものです。

通常、3つのプロジェクトを作成します。無料プロジェクト、有料プロジェクト、図書館プロジェクト。

次に、次のようなライブラリプロジェクトにBuild.javaファイルを作成します。

public class Build {
    public final static int FREE = 1;
    public final static int PAID = 2;
    public static int getBuild(Context context){
        return context.getResources().getInteger(R.integer.build);
    }
}

次に、各プロジェクトにbuild.xmlリソースを作成します。

[ライブラリ]/resources/values/build.xml:

<?xml version="1.0" encoding="UTF-8"?>
<resources>
    <integer name="build">0</integer>
</resources>

[無料]/resources/values/build.xml:

<?xml version="1.0" encoding="UTF-8"?>
<resources>
    <integer name="build">1</integer>
</resources>

[有料]/resources/values/build.xml:

<?xml version="1.0" encoding="UTF-8"?>
<resources>
    <integer name="build">2</integer>
</resources>

その後、実行時にバージョンを確認できます。

if (Build.getBuild(context) == Build.FREE){
   // Do the free stuff
} else {
   // Do the paid stuff
}

ブログ投稿では、Linuxコマンドラインでプロジェクトを最初から作成するために必要な正確な手順について詳しく説明しています。

于 2011-12-23T23:30:46.790 に答える
0

「有料」と「無料」の情報は各アプリケーションに依存しており、図書館はそのような情報を知りません。

それらのアプリケーションに依存する特定のコード(たとえば、ライセンスをチェックするコード)がある場合は、両方に共通する部分ではなく、特定のアプリケーションに含める必要があります。

于 2011-07-25T21:40:56.677 に答える