erluxman
estoy siguiendo uno de los Laboratorios de código de Google para hacer una aplicación instantánea.
Y yo estaba tratando de crear topeka-ui
(Un módulo de funciones de interfaz de usuario para aplicaciones instantáneas).
Cuando intento ejecutar uno de los módulos de aplicaciones instantáneas, dice:
Se definió una función dependiente, pero no se estableció ningún ID de paquete. Probablemente le falte una dependencia de función en la función base.
Tuve un problema porque tenía una aplicación de Android y una biblioteca de Android, pero usé el complemento incorrecto por error.
Para una aplicación:
plugins {
id "com.android.application"
id "kotlin-android"
}
Para una biblioteca:
plugins {
id "com.android.library"
id "kotlin-android"
}
-
¡Muchas gracias! ¡Por alguna razón, Android Studio creó automáticamente la identificación del complemento “com.android.application” en la biblioteca gradle también!
– Idán
14 de noviembre de 2020 a las 10:38
tim.paetz
Dado que esta es la única pregunta de stackoverflow para “Se definió una función dependiente, pero no se estableció una ID de paquete. Probablemente le falte una dependencia de función en la función base”. Responderé cuál era mi problema aquí en lugar de crear una nueva pregunta. Tenía un módulo que me estaba dando este error y no podía resolver el problema. En el archivo build.gradle del módulo dependiente, tenía:
apply plugin: 'com.android.feature'
Debería haber sido:
apply plugin: 'com.android.library'
-
Gracias buen amigo! ¡Salvaste mi día! Nunca sabré cómo te diste cuenta de que esa era la causa del error. La próxima vez necesitaré usar la opción Biblioteca de Android cuando cree un nuevo módulo. Sin embargo, esta ‘biblioteca’ no contiene ningún código específico de Android.
– Brian Reinhold
9 de julio de 2020 a las 11:07
-
aplique el complemento: ‘com.android.library’ corrija el error de ortografía @tim.paetz
–Harish Gyanani
31 de julio de 2020 a las 13:55
-
Respuesta perfecta.
– Bhavesh Moradiya
3 de noviembre de 2020 a las 14:20
TWL
Acabo de ejecutar el codelab en AS 3.0 beta 2 sin problemas (* nota). ¿Después de qué punto en el codelab apareció su problema?
Es posible que te hayas perdido un paso. Vuelva a verificar que el build.gradle de su módulo base tenga:
dependencies {
...
application project(":topekaapk")
feature project(":topekaui")
}
Dejando fuera feature project(":topekaui")
puede causar este error:
Error: com.android.builder.internal.aapt.AaptException: se definió una función dependiente, pero no se configuró ningún ID de paquete. Probablemente le falte una dependencia de función en la función base.
Nota: debido a que el enlace de datos se ha deshabilitado para los módulos que no son de base (https://issuetracker.google.com/63814741), se requieren algunos pasos adicionales en el paso 7 de funciones múltiples para sortearlo (es decir, deshacerse de DataBindingUtil).
-
Publicar mi mensaje exacto para ayudar con los motores de búsqueda: Causado por: com.android.builder.internal.aapt.AaptException: Funciones dependientes configuradas pero no se configuró ningún ID de paquete.
– firma del método
15 oct 2018 a las 15:13
Lo hice en build.gradle(…mylibrary), lo arreglé y funcionó:
plugins {
- id 'com.android.application'
+ id 'com.android.library'}
defaultConfig {
- applicationId "com.example.mylibrary"
minSdk 21
targetSdk 32}
Tuve este problema en mi módulo de funciones dinámicas cuando olvidé agregarle una referencia en el módulo base android.dynamicFeatures = [":module_name"]
formación
Teyam
A base de estructura básica del proyecto de aplicación instantánea,
Cuando crea su aplicación instantánea, este módulo toma todas las funciones y crea APK de aplicaciones instantáneas. No contiene ningún código o recurso; contiene solo un
build.gradle
archivo y tiene elcom.android.instantapp
complemento aplicado a él. Aquí hay un ejemplo:
apply plugin: 'com.android.instantapp'
...
dependencies {
implementation project(':base')
// if there additional features, they go here
implementation project(':feature1')
}
Además, tenga en cuenta que
El archivo de configuración de compilación del módulo de características base debe aplicar el
com.android.feature
complemento gradle Elbuild.gradle
El archivo no contiene ninguna modificación específica de la aplicación instantánea.
Con esto y en línea con su error encontrado, es posible que desee verificar su archivo de configuración de compilación del módulo de función base. Por último, asegúrese de que usted también sincroniza tu proyecto con archivos gradle.
Ver Documentación de aplicaciones instantáneas de Android para más información.
Con el siguiente gradle pugin
classpath 'com.android.tools.build:gradle:3.5.1'
En mi caso, después de agregar a la aplicación build.gradle
android{
dataBinding {
enabled = true
}
}
Recibí el error publicado, luego hice lo siguiente
Android studio -> invalidate cache and restart
¡El problema se solucionó!
¿Aún no está arreglado?
Probablemente haya una dependencia en conflicto que resida en build.gradle, como la versión anterior y actual de la misma biblioteca
¿Configuró baseFeature=true en topekaui build.gradle porque el enlace de datos no se admite actualmente en los módulos de características que no son base? Lo hice y también resolví tu problema. Y tampoco puedo encontrar una buena solución para eso …
– Mkr
28 de agosto de 2017 a las 9:26
yo tampoco he encontrado la solucion todavia
– Erluxman
28 de agosto de 2017 a las 9:30
lo más molesto es que ni siquiera puedo encontrar dónde se definió la característica dependiente. sin registro, sin información de depuración. nada. Cada vez es peor desarrollar en Android Studio. Tan jodidamente frustrante.
– Gillis Haasnoot
15 de noviembre de 2017 a las 1:07