plantillas - Android Studio crea una plantilla de proyecto para nuevos proyectos
plantillas editables android studio (2)
En primer lugar, soy consciente de this pregunta; Sin embargo, no puedo seguir la respuesta porque no hay directorios mencionados allí.
Al crear un nuevo proyecto de Android Studio, quiero que lo siguiente se cree automáticamente:
- Paquetes y directorios específicos;
- Gradle dependencias
- Varias clases (pueden importarse de otro lugar)
¿Es posible crear una plantilla de Android Studio para estas tareas?
Echa un vistazo a esta carpeta en tu carpeta SDK de Android:
android-sdk/tools/templates/projects
Hay tres plantillas predefinidas como se ve a continuación, que generalmente utilizamos.
Cada carpeta de plantillas tiene diferentes archivos
ftl
que son plantillas para cada uno de los proyectos existentes:
Puede crear una nueva carpeta de plantillas y diseñar los archivos
ftl
como desee.
Y también definir las estructuras del proyecto.
Simplemente abra uno de estos y obtendrá una idea de cómo están las plantillas predeterminadas. Extiéndalos o cree los suyos desde cero como desee.
Dicho lo anterior, sus preguntas se pueden responder de la siguiente manera:
Para crear paquetes,
cree una estructura de carpetas en la carpeta
root
para que coincida con el nombre de su paquete.
Para dependencias de gradle,
agréguelos a sus archivos
*.gradle.ftl
, según sea necesario.
Para copiar / importar clases / archivos existentes,
mire
recipe.xml.ftl
para tener una idea de cómo copiar.
ACTUALIZACIÓN: después de que las personas informaron que no funciona si se cambia en la carpeta mencionada anteriormente en Android SDK
Busqué de nuevo y encontré otra ubicación donde se almacenan estas plantillas, es decir, directamente debajo de la carpeta de instalación de Android Studio y no en la carpeta del SDK de Android.
Verificado para
Android Studio Version 1.5
y
Android Studio Version 2.0 Beta
:
<installation folder>/plugins/android/lib/templates
Los tipos de archivos y su organización son los mismos que se mencionaron anteriormente.
re: Dependencias predeterminadas de Gradle Ninguna de las anteriores. Las respuestas me funcionaron. El archivo clave es
C:/Program Files/Android/Android Studio/plugins/android/lib/templates/gradle-projects/NewAndroidModule/root/build.gradle.ftl
La parte importante es que está en NewAndroidModule , NO NewAndroidProject
Así es como se ve mi archivo:
<#if !(perModuleRepositories??) || perModuleRepositories>
buildscript {
repositories {
jcenter()
<#if mavenUrl != "mavenCentral">
maven {
url ''${mavenUrl}''
}
</#if>
}
dependencies {
classpath ''com.android.tools.build:gradle:${gradlePluginVersion}''
}
}
</#if>
<#if isLibraryProject?? && isLibraryProject>
apply plugin: ''com.android.library''
<#else>
apply plugin: ''com.android.application''
</#if>
<#if !(perModuleRepositories??) || perModuleRepositories>
repositories {
jcenter()
<#if mavenUrl != "mavenCentral">
maven {
url ''${mavenUrl}''
}
</#if>
}
</#if>
android {
compileSdkVersion <#if buildApiString?matches("^//d+$")>${buildApiString}<#else>''${buildApiString}''</#if>
buildToolsVersion "${buildToolsVersion}"
defaultConfig {
<#if isLibraryProject?? && isLibraryProject>
<#else>
applicationId "${packageName}"
</#if>
minSdkVersion <#if minApi?matches("^//d+$")>${minApi}<#else>''${minApi}''</#if>
targetSdkVersion <#if targetApiString?matches("^//d+$")>${targetApiString}<#else>''${targetApiString}''</#if>
versionCode 1
versionName "1.0"
}
<#if javaVersion?? && (javaVersion != "1.6" && buildApi lt 21 || javaVersion != "1.7")>
compileOptions {
sourceCompatibility JavaVersion.VERSION_${javaVersion?replace(''.'',''_'',''i'')}
targetCompatibility JavaVersion.VERSION_${javaVersion?replace(''.'',''_'',''i'')}
}
</#if>
<#if enableProGuard>
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile(''proguard-android.txt''), ''proguard-rules.pro''
}
}
</#if>
}
dependencies {
<#if dependencyList?? >
<#list dependencyList as dependency>
compile ''${dependency}''
</#list>
</#if>
compile fileTree(dir: ''libs'', include: [''*.jar''])
<#if WearprojectName?has_content && NumberOfEnabledFormFactors?has_content && NumberOfEnabledFormFactors gt 1 && Wearincluded>
wearApp project('':${WearprojectName}'')
compile ''com.google.android.gms:play-services:+''
</#if>
<#if unitTestsSupported>
testCompile ''junit:junit:${junitVersion}''
</#if>
//from C:/Program Files/Android/Android Studio/plugins/android/lib/templates/gradle-projects/NewAndroidModule/root/build.gradle.ftl
//logback
// compile ''MyAwesomeDependency:1.1.+''
// compile ''MyOtherAwesomeDependency:1.1.+''
// compile ''org.slf4j:slf4j-api:1.7.+''
//end logback
// compile ''com.google.code.gson:gson:2.+''
}
y aquí está la salida correcta build.gradle para la aplicación del módulo:
apply plugin: ''com.android.application''
android {
compileSdkVersion 23
buildToolsVersion "23.0.3"
defaultConfig {
applicationId "com.ntier.myapplication"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile(''proguard-android.txt''), ''proguard-rules.pro''
}
}
}
dependencies {
compile fileTree(dir: ''libs'', include: [''*.jar''])
testCompile ''junit:junit:4.12''
//from C:/Program Files/Android/Android Studio/plugins/android/lib/templates/gradle-projects/NewAndroidModule/root/build.gradle.ftl
//logback
// compile ''MyAwesomeDependency:1.1.+''
// compile ''MyOtherAwesomeDependency:1.1.+''
// compile ''org.slf4j:slf4j-api:1.7.+''
//end logback
// compile ''com.google.code.gson:gson:2.+''
compile ''com.android.support:appcompat-v7:23.4.0''
}
Entonces, finalmente, después de que el build.gradle es gen''d, descomento en consecuencia.
Esto me llevó todo el día descubrirlo. Estoy bastante disgustado con el Gradle doc''n y el Android Studio Doc''n. Esto debería haber sido una tarea fácil con una rápida y fácil documentación. Tal como están las cosas, todavía no entiendo muy bien el gradle confign. : - {
La secuencia de directorios anterior es para mi Android Studio instalado. Su Android Studio puede estar instalado en otro lugar, pero esta respuesta sigue siendo relevante.
ADVERTENCIA: acabo de intentar actualizar mi Android Studio y se resiste porque ha notado el cambio en el archivo. Por lo tanto, ASEGÚRESE DE HACER UNA COPIA DE SEGURIDAD DE ESTE ARCHIVO antes de modificarlo. y luego RESTAURAR EL ARCHIVO antes de actualizar Android Studio.