Cómo crear una plantilla de proyecto personalizada en Android Studio
¿Puedo crear una plantilla de proyecto personalizada en Android Studio?
Encuentro el directorio "Android Studio.app/sdk/tools/templates/projects/NewAndroidApplication" y edito un poco. Pero ahora es trabajo.
- ¿Cómo puedo usar la plantilla de código en android al crear un proyecto desde la línea de comandos?
- TemplateMatching mattoBitmap opencv para android
- Plantilla de proyecto personalizado de Android studio con dos o más módulos juntos
- La plantilla en vivo de Android Studio no funciona
- ¿Plantillas de la aplicación para Android?
Tiene alguna idea ?
Quiero crear el proyecto de la plantilla como Xcode.
- Android: java.lang.ClassCastException: android.widget.imageView no se puede convertir en android.widget.textView
- Plantillas de diseño de Android
- Plantilla de nuevo módulo de estudio de Android: diferencia entre los identificadores globales topOut y projectOut
- Cómo crear un setter personalizado de plantillas Intellij para su uso con Guava
- IntelliJ Live Templates bug con la función completeSmart ()
- Cómo extender la etiqueta de inclusión en Android
- En la vista Web de Android, ¿puedo modificar el DOM de una página web?
- ¿Cómo se muestran 2 vistas en 1 actividad (android)?
Ninguno de los anteriores. Las respuestas funcionaron para mí. Esto es lo que encontré: 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 , NOT 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 de 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' }
Por lo tanto, finalmente, después de la build.gradle es gen'd me uncomment en consecuencia.
Esto me llevó todo el día a desaparecer. Estoy bastante disgustado con el Doc'n de Gradle y el Doc'n de Studio de Android. Esto debería haber sido una tarea fácil w / rápida fácil doc'n. Como es, todavía no entiendo gradle confesar muy bien. : – {
La secuencia de directorio anterior es para mi Android Studio instalado. Su Android Studio puede instalarse en otro lugar, pero esta respuesta sigue siendo relevante.
Vine con este blog agradable , que le da un tutorial completo sobre la creación de plantilla de archivo en android studio y también explica acerca de la sintaxis del código de la plantilla.
Si desea que su plantilla construya varios archivos y paquetes cuando se usan, (como lo que Fragmento y Actividad hacen como plantillas predeterminadas), sugiero que visite esta publicación ya que da un paseo completo sobre este tema.
Probablemente tarde para responder, pero no echa un vistazo a esta carpeta en su carpeta androide SDK.
android-sdk\tools\templates\projects
Aquí es donde se almacenan las plantillas de proyecto nuevas existentes.
He publicado una respuesta detallada explicando en este post
Edición de "gradle-projects / NewAndroidModule". Funciona.