[解決済み] Android Gradle 3.0.0-alpha2 プラグイン、読み取り専用プロパティ 'outputFile' の値を設定できない。
2023-04-22 14:38:52
質問
私はこのコードを使っていました
applicationVariants.all { variant ->
variant.outputs.each { output ->
def SEP = "_"
def flavor = variant.productFlavors[0].name
def buildType =
variant.variantData.variantConfiguration.buildType.name
def version = variant.versionName
def date = new Date()
def formattedDate = date.format('ddMMyy_HHmm')
def newApkName = PROJECT_NAME + SEP + flavor + SEP + buildType + SEP + version + SEP + formattedDate + ".apk"
def file = new File(newApkName)
output.outputFile = file
}
}
を使うと、新しいapkをビルドするときにapkファイルの名前を変更することができますが、私は
Android Studio 3.0 Canary 2
を使用しているため、このエラーが表示されます。
読み取り専用のプロパティ 'outputFile' の値を設定することができません....
どのように解決するのですか?
として Androidプラグイン3.0移行ガイド が示唆しています。
-
使用する
all()
の代わりにeach()
-
使用する
outputFileName
の代わりにoutput.outputFile
ファイル名だけを変更する場合(あなたの場合)
ガイドにある例です。
// If you use each() to iterate through the variant objects,
// you need to start using all(). That's because each() iterates
// through only the objects that already exist during configuration time—
// but those object don't exist at configuration time with the new model.
// However, all() adapts to the new model by picking up object as they are
// added during execution.
android.applicationVariants.all { variant ->
variant.outputs.all {
outputFileName = "${variant.name}-${variant.versionName}.apk"
}
}
関連
-
[解決済み] アイテムの親を取得する際にエラーが発生しました。AppCompat v23にアップグレードした後、指定された名前に一致するリソースが見つかりません。
-
[解決済み] エラーメッセージ "Android Gradle plugin requires Java 11 to run. 現在、Java 1.8を使用しています"
-
[解決済み】Android Gradleプラグイン0.7.0:"APKのパッケージング中にファイルが重複してしまう"
-
[解決済み】Android Gradleプラグインの現在のバージョンでは、オンデマンドの設定はサポートされていません。
-
[解決済み] エディタウィンドウのズーム android studio [重複]。
-
[解決済み] android studioで、2つのファセットを読み込めない-ファセットタイプが不明:androidとandroid-gradle
-
[解決済み] Android Studioでlogcatをフィルタリングする方法は?
-
[解決済み] Android Studio 3.0 - メソッド 'com.android.build.gradle.internal.variant.BaseVariantData.getOutputs()Ljava/util/List' を見つけることができない。
-
[解決済み] Android Studioのメッセージウィンドウを表示するには?
-
[解決済み] Flutter doctor エラー - Android sdkmanager tool not found. ウィンドウズ
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] gradleを使ってAPKファイル名にversionNameを設定するには?
-
[解決済み] エディタウィンドウのズーム android studio [重複]。
-
[解決済み] android studioで、2つのファセットを読み込めない-ファセットタイプが不明:androidとandroid-gradle
-
[解決済み] AndroidStudioでJava SDKのパスを設定するには?
-
[解決済み] Android Studioで既存のプロジェクトを新しい名前でコピーする
-
[解決済み] Android Studioでコード内の複数の場所(sublime)を選択する方法は?
-
[解決済み] Android Studioでlogcatをフィルタリングする方法は?
-
[解決済み] Android API 23 Platform のソースが見つかりません(Android Studio 2.0)。
-
[解決済み] Android Studioのメッセージウィンドウを表示するには?
-
[解決済み] Android StudioでのXML属性の並び順