2017-07-27 11 views
2

私はデモと私のアプリのフルバージョンをリリースしたいと思います。条件付きAndroidManifest属性はビルドプロファイルに基づいていますか?

どのようにすることができます:私はapkを構築する場合、私は2つのアプリ、フル1およびデモのための1つを取得するよう

  • が異なるビルドプロファイルを定義?
  • <application android:label="@string/app_name">を変更しますか?たとえばフルバージョンの場合@String/app_nameを使用しますが、デモビルドプロファイルの使用にはapp_name_demoを使用しますか?アプリ名もローカライズされています。

私は何とかgradleproductFlavors一部で作業する必要がありますか?

同様:

productFlavors { 
     demo { 
      applicationIdSuffix ".demo" 
      versionNameSuffix "-demo" 
     } 
    } 

しかし、私は上記の私のポイントを達成する方法を見つけることができませんでした。

+0

あなたはproductFlavorsを使用したいと思うようですが、1つのビルドバリアントにはそれぞれ独自のapkがあります – lelloman

答えて

1

編集 はproductFlavors

productFlavors { 
     demo { 
      applicationIdSuffix ".demo" 
      versionNameSuffix "-Demo" 

     } 

     release { 
      minifyEnabled true 
      shrinkResources true 
      debuggable false 

     } 
    } 

/アプリ/ srcの下 1.デモ 2.リリース

場所constant.xmlファイルを2つのフォルダを作成し、それに応じてそこにあなたのアプリケーションのラベルを入れて行きます。あなたのビルドタイプに基づいて、アプリケーション名が取得されます。

また、各製品のフレーバーフォルダ内には、アプリのメインフォルダと同じディレクトリ構造を作成できます。

だからあなたの最終的な構造は、このような

/demo/res/values/constant.xml 
/demo/res/values-fr/constant.xml 

何かのように行くだろう。

+0

どうすればこれらのフォルダの下にローカライズ値を追加できますか?現在私は 'values/strings.xml'と' values-fr/string.xml'を持っています。もちろん、すべてのローカリゼーションの 'app_name_demo'も変更したいと思います。 – membersound

+0

私は悪い習慣であることを示唆していると思う、あなたが使用する必要があります異なる機能(デモ/フルなど)に基づいてアプリの2つのバージョンを区別したい場合、ビルドの種類は、同じアプリケーションの異なる構成に使用するためのものですフレーバー – lelloman

+0

@lellomanあなたが正しいです上記の編集をご覧ください。 –

関連する問題