হ্যাঁ আমরা এটি পরিবর্তন করতে পারি তবে আরও কিছু মনোযোগ দিয়ে
এখন আপনার মধ্যে এই অ্যাড build.gradle আপনার প্রকল্পের যখন নিশ্চিত করুন যে আপনি পরীক্ষা করেছি বিল্ড বৈকল্পিক মত আপনার প্রকল্পের release or Debug
তাই এখানে আমি আমার বিল্ড বৈকল্পিক সেট করেছেন যেমন release
কিন্তু আপনি ডিবাগ সেইসাথে নির্বাচন করতে পারেন।
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig getSigningConfig()
applicationVariants.all { variant ->
variant.outputs.each { output ->
def date = new Date();
def formattedDate = date.format('yyyyMMddHHmmss')
output.outputFile = new File(output.outputFile.parent,
output.outputFile.name.replace("-release", "-" + formattedDate)
//for Debug use output.outputFile = new File(output.outputFile.parent,
// output.outputFile.name.replace("-debug", "-" + formattedDate)
)
}
}
}
}
আপনি এটির মতো ভিন্ন পদ্ধতির সাহায্যে এটি করতে পারেন
defaultConfig {
applicationId "com.myapp.status"
minSdkVersion 16
targetSdkVersion 23
versionCode 1
versionName "1.0"
setProperty("archivesBaseName", "COMU-$versionName")
}
Build.gradle এ সেট সম্পত্তি পদ্ধতি ব্যবহার করুন
এবং প্রকল্পগুলি চালনার আগে গ্রেড সিঙ্ক করতে ভুলবেন না
আশা করি এটি আপনার সমস্যার সমাধান করবে :)
গুগল আপডেট দ্বারা সম্প্রতি এটি যুক্ত করার জন্য একটি নতুন পদ্ধতি
হ'ল আপনি এখন স্বাদ বা ভেরিয়েন্ট আউটপুট অনুসারে আপনার বিল্ডটির নাম পরিবর্তন করতে পারেন
// নীচের উত্সটি বিকাশকারী অ্যান্ড্রয়েড ডকুমেন্টেশন থেকে রয়েছে
আরও তথ্যের জন্য উপরের ডকুমেন্টেশন লিংকটি অনুসরণ
করুন ভেরিয়েন্ট আউটপুটগুলি ম্যানিপুলেট করতে ভেরিয়েন্ট এপিআই ব্যবহার করে নষ্ট হয়ে গেছে নতুন প্লাগইন সহ। এটি এখনও সাধারণ কাজের জন্য যেমন নীচের সময় মতো বিল্ড সময় চলাকালীন APK নাম পরিবর্তন করার জন্য কাজ করে:
// 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"
}
}
নাম পরিবর্তন .aab বান্ডিল এই চমত্কার উত্তর ডেভিড মেডেনজাক দ্বারা উত্তর
tasks.whenTaskAdded { task ->
if (task.name.startsWith("bundle")) {
def renameTaskName = "rename${task.name.capitalize()}Aab"
def flavor = task.name.substring("bundle".length()).uncapitalize()
tasks.create(renameTaskName, Copy) {
def path = "${buildDir}/outputs/bundle/${flavor}/"
from(path)
include "app.aab"
destinationDir file("${buildDir}/outputs/renamedBundle/")
rename "app.aab", "${flavor}.aab"
}
task.finalizedBy(renameTaskName)
}
//@credit to David Medenjak for this block of code
}
উপরোক্ত কোডের কি দরকার আছে?
অ্যান্ড্রয়েড স্টুডিওর সর্বশেষ সংস্করণে আমি যা পর্যবেক্ষণ করেছি 3.3.1 .1
.Ab বান্ডিলের পুনর্নামকরণটি পূর্ববর্তী কোড দ্বারা সম্পন্ন হয় সেখানে কোনও টাস্কের পুনরায় নামকরণের প্রয়োজন হয় না।
আশা করি এটি আপনাদেরকে সহায়তা করবে। :)