1

背景: 私は数年前にリリースされたアプリで作業しています。今、私のアプリはかなり大きなユーザーベースを持っています。リリースの時点では私は無料のバージョンしか持っていなかったので、今までは製品のフレーバーが設定されていませんでした。のは、私のアプリケーションのIDであると仮定しましょうcom.company.app独自のアプリケーションIDを持つAndroid製品のフレーバー

問題:

数年後、今私はアプリの有料版を導入するつもりだと私は製品を使用するつもりですフレーバー - 有料および無料

productFlavors { 
    free { 
     applicationId 'com.company.app.free' 
    } 
    paid { 
     applicationId 'com.company.app.paid' 
    } 
} 

質問1:私は自分のアプリケーションIDを変更した場合 Androidのドキュメントによると、Google Playストアを再生するには、ブランドの新しいアプリとして私のアプリを扱います。上記のフレーバーブロックを使用すると、現在の店舗リストとユーザーベースが失われますか?しかし、それは単なる製品の味であるので、それは重要ですか?

質問2:製品のフレーバで異なるアプリケーションIDを使用する必要がありますか?両方の製品のフレーバーで現在のアプリケーションIDを使用できますか?

おかげ

答えて

1

回答1:あなたは店の2つのユニークなアプリがあるでしょう。彼らは関係のない2つのアプリとして扱われます。

回答2:同じ製品IDを使用できます。シンプルなソリューションは、有料バージョンでブール値のリソース値をtrueに設定し、アプリにいくつかのプレミアム機能を追加するかどうかをチェックすることです。有料フレーバーでresValueを使用すると可能です。

+0

ありがとうナタン。私は、さまざまなソースセットと依存性リストを製品の味に基づいて保持したいと考えています(注:有料版では、広告ネットワークの依存関係や広告関連のソースコードを保持する必要はありません)。どちらの製品のフレーバーにも同じアプリケーションIDを保持していれば、機能は忘れられませんよね?ご確認ください。ありがとう – OrangeTree

+0

それは正しいです。それがあなたを助けたならば、答えを受け入れたものとしてマークしてください。ありがとう! – Natan

0

あなたは、アプリケーションがひとつになりますhttps://developer.android.com/google/play/billing/index.html

課金アプリ内にロックを取るID(パッケージ名)

を変更することなく、既存のアプリに同じに支払い機能を追加することができます数年前にリリースされました。 私にとってこれはフリー/ペイ代用品に最適なソリューションです。フレーバーよりもはるかに優れています。

0

異なるソースセットを異なるフレーバに作成できます。また、特定のビルドバリアントに依存関係を設定することもできます。いくつかの言葉で明確な説明をすることは難しく、here からはっきりとわかります。

関連する問題