saya menggunakan kode ini
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
}
}
untuk mengubah nama file apk ketika saya membangun apk baru, tetapi karena saya menggunakan Android Studio 3.0 Canary 2 kesalahan ini muncul:
Tidak dapat mengatur nilai properti read-only 'outputFile' ....
android-studio
android-gradle-plugin
Mohamd Ali
sumber
sumber
Jawaban:
Seperti yang disarankan oleh panduan migrasi plugin Android 3.0 :
all()
sebagai gantieach()
outputFileName
alih-alihoutput.outputFile
jika Anda hanya mengubah nama file (itu kasus Anda)Contoh dari panduan:
sumber
Lihat di bawah:
sumber
Kode di bawah ini berfungsi untuk saya di android studio canary 3.0.0-alpha3
Ini mengubah nama file apk
sumber
Ini adalah contoh lengkap dari pertanyaan ini.
Hanya Anda yang perlu menempelkan gradle 3.0+ setelah productFlavours
sumber
Saya mendirikan gradle 3.0 tidak lagi berfungsi. tautan sumber
kemudian saya menggunakan perintah
gradlew
untuk mengkompilasi project.andcp
dan apk keluaran ke jalur yang saya tentukanDi Execute shell, saya meletakkan perintah di bawah ini.
sumber
Saya memiliki masalah yang sama. Kesalahan "Tidak dapat menyetel nilai properti hanya-baca 'outputFile' ...." "
Jadi yang saya lakukan adalah mengubah versi Android Plugin Repository menjadi 2.3.3 di jendela Project Structure. Ini berfungsi sekarang dan kesalahannya hilang.
Struktur Proyek
Nanti, lakukan Bersihkan dan Bangun Ulang untuk proyek dan hanya itu
Semoga ini bisa membantu Anda.
sumber
Ini adalah satu setengah tahun sejak pertanyaan diajukan, tetapi mungkin ini akan membantu seseorang (seperti saya) yang menemukan posting ini lebih dulu. Saya yakin jawaban untuk mengubah nama file dan direktori telah terjawab di sini .
sumber
Setelah mengupdate ke Android Studio 3.0.0 dan menggunakan gradle baru, sekarang, keluaran apks akan didistribusikan dalam direktori menurut nama ragam dan jenis build.
sumber