有料版と無料版の2つのapkを作成する場合、2つのプロジェクトを作成しないとですが
以下の方法で一つのソースで異なる2つのapkを作成できます。
・testCore・・・実際のプログラムを記述しているプロジェクト(ライブラリ)
・textPay ・・・有料版のapk(testCoreライブラリを参照)
・textFree・・・無料版のapk(testCoreライブラリを参照)
※testCoreのActivityを指定する場合、パッケージ名を含めて指定するのがポイント。
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.hoge.pay" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="4" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <!-- coreのActivityを指定 Start --> <activity android:label="@string/app_name" android:name="com.hoge.core.TestCoreActivity" > <intent-filter > <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <!-- coreのActivityを指定 End --> </application> </manifest>
「testCore」を右クリックし「プロバティー」-「Android」の「Is Library」にチェックを入れる
「testFree」を右クリックし「プロバティー」-「Android」の「追加」ボタンを押して「testCore」を選択
「testPay」も同様に。
testFreeとtestPayをビルドすると2つのアプリが作成されます。
なお、この発想自体、以下のサイトを参考にしました。プログラムで無料、有料の判別方法なども記載されています。
無料アプリと有料アプリのプロジェクトを管理する
コメント