Android Studio générera un nom APK par défaut comme application (version | Débogou) .apk.
Comment générer un nom de fichier apk identique au nom du package de l'application comme com.example-débog.apk code>. P>
5 Réponses :
Essayez de mettre cela dans la construction de votre module.Gradle
applicationVariants.all { variant -> variant.outputs.each { output -> def file = output.outputFile def appId = android.defaultConfig.applicationId def fileName = appId + "-" variant.buildType.name +".apk" output.outputFile = new File(file.parent, fileName) } }
Cela ne crache que un apk pour moi et ne crache pas un APK pour chaque variante de construction.
Bien sûr que non, si vous voulez APK pour une autre variante, vous devez d'abord changer la variante de construction. Ou utilisez une commande pour construire toutes les versions. Ce code ne modifie que le nom de l'APK, rien de plus.
Utiliser './gradlew assembler' dans le terminal doit cracher tous les buildtypes de toutes les variantes. Sinon, vous pouvez faire './Gradlew assemblezase' ou './gradlew assemblledebug' pour ces buildypes spécifiques
Vous pouvez voir cette Lien .
ou option illogique de renommer votre Ce code peut être utile pour vous: p> version | débog.apk code> avec nom ce que vous voulez dans le navigateur de fichiers.
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
applicationVariants.all { variant ->
variant.outputs.each { output ->
def formattedDate = new Date().format('yyyyMMddHHmmss')
def newName = output.outputFile.name
newName = newName.replace("app-", "$rootProject.ext.appName-") //"MyAppName" -> I set my app variables in the root project
newName = newName.replace("-release", "-release" + formattedDate)
//noinspection GroovyAssignabilityCheck
output.outputFile = new File(output.outputFile.parent, newName)
}
}
}
debug {
}
}
Créer un fichier nommé CustomName.Gradle dans le répertoire de niveau supérieur du projet.put ce code dans celui-ci. puis dans la gradle de votre module d'application Ajouter ce code P> < Pré> xxx pré> p>
Vous pouvez le faire sans utiliser d'autres tâches, régler les archives Par exemple: p> sortie: p> archivesbasename code>.
project.ext.set("archivesBaseName", "com.example" );
Vous pourrez peut-être accéder à un nom rootproject et l'utiliser comme ceci: project.ext.set ("archivesbasename", rootproject.getname () + "-" + defaultconfig.versionName); code>
Malheureusement, cela ne fait pas échouer lorsque vous travaillez avec des variantes comme ArchivesBasename est global pour tous
Cela peut vous aider. Ce code créera un nom d'application comme appliquid-version.apk code> ou
appliquid-débog.apk code> dans lequel ApplicationID peut être votre nom de package.
buildTypes {
applicationVariants.all { variant ->
variant.outputs.each { output ->
def newName = output.outputFile.name
newName = newName.replace("app-", applicationId)
output.outputFile = new File(output.outputFile.parent, newName)
}
}
}
Ce lien peut aider Stackoverflow.com/questions / 22126299 / ...
Le lien ci-dessus est utile