[解決済み] 製品のフレーバーごとに異なる依存関係を定義する方法
2022-04-22 04:31:37
質問
私のアプリの1つをGradleに変換しており、新しいビルドフレーバー機能を使用して、有料と無料の広告ベースのフレーバーを持ちたいと考えています。
広告ベースバージョンだけをadmob SDKに依存させたいのですが。
私のビルドファイルは次のようなものです。
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
}
}
apply plugin: 'android'
repositories {
mavenCentral()
}
android {
compileSdkVersion 18
buildToolsVersion "18.0.1"
defaultConfig {
minSdkVersion 10
targetSdkVersion 18
}
productFlavors {
Pro {
packageName "de.janusz.journeyman.zinsrechner.pro"
}
Free {
dependencies {
}
}
}
}
dependencies {
compile 'com.android.support:support-v4:18.0.+'
compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
compile fileTree(dir: 'libs', include: '*.jar')
}
フリー製品のフレーバーにおける依存関係が、両方のフレーバーの一般的なライブラリを含むメインのlibsフォルダにマージされた独自のlibsフォルダを持つように設定する方法はありますか?
可能であれば、このフォルダをどのように定義すればよいですか?
解決方法は?
フレーバー固有の依存関係を定義するには
proCompile
の代わりに
compile
を依存関係セクションに追加します。gradle propertiesを実行すると、自動的に作成された設定の概要が表示されます。
正しいビルドファイルはこのようなものです。
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
}
}
apply plugin: 'com.android.application'
repositories {
mavenCentral()
}
android {
compileSdkVersion 22
buildToolsVersion "22.0.1"
defaultConfig {
minSdkVersion 10
targetSdkVersion 22
}
productFlavors {
pro {
packageName "de.janusz.journeyman.zinsrechner.pro"
}
free { }
}
}
dependencies {
compile 'com.android.support:support-v4:22.2.0'
freeCompile 'com.google.android.gms:play-services-ads:7.5.0'
}
関連
-
AndroidでAttempt to invoke virtual method... on null object referenceの例外が発生する。
-
android.os の NetworkOnMainThreadException。
-
Gradle の同期に失敗しました。com.android.tools.build:gradle が見つかりませんでした。
-
WeChatとQQは、他のアプリのオープンリストに自分のアプリを追加し、ファイルパスを取得することができます
-
Android ProgressBarのスタイルカラーを変更する
-
Androidカスタムドロップダウンリストボックスコントロール
-
Android--shape--描画のコーナー、グラデーション、パディング、サイズ、ソリッド、ストロークのプロパティを指定する。
-
アンドロイドスタジオ学習入門
-
アンドロイドスタジオソフトウェア使用詳細説明書
-
[解決済み] gradleに依存関係を強制的に再ダウンロードさせるには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
aapt2エラー:ログを確認する(具体的な原因の探り方)
-
gitlab 設定エラー。リモートリポジトリから読み込めなかったか、ホストキーの検証に失敗しました。
-
AndroidStudio reports Could not resolve all artifacts for configuration ':app:classpath'.
-
Android: インポートモジュールエラー Android リソースのリンクに失敗しました
-
Android開発で「Attempt to invoke virtual method 'XXX()' on null object reference」というヌルポインター例外に遭遇する。
-
指定された子にはすでに親がいます。まず、その子の親に対して removeView() をコールする必要があります。
-
android block certificate validation CertPathValidatorException: 認証パスのトラストアンカーが見つかりません
-
GoogleMapと連携し、位置情報の取得が可能
-
Android.support.v7.widget.Toolbar が見つかりませんでした。
-
Android studio 制約レイアウト ConstraintLayout