Android Flavors, ContentProviders, SyncAdapters y AccountManager

He definido algunos sabores y buildTypes para mi aplicación para Android

productFlavors { X { applicationId = "com.x.xxxx" } Y { applicationId = "com.y.yyyy" } } buildTypes { release { minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard_rules.txt' } debug { applicationIdSuffix ".debug" } } 

Que hace el trabajo de crear diferentes sabores / buildType combinaciones.

Ahora, para asegurarme de que ContentProviders funcione y no obtenga un error de Error Failure [INSTALL_FAILED_CONFLICTING_PROVIDER] , he cambiado las referencias android:authorities="${applicationId}" y AUTHORITY en código a BuildConfig.APPLICATION_ID .

Eso hace que el ContentProvider funcione bien, es decir, no arroja un error cuando instalo dos tipos diferentes en el mismo teléfono. Me permite instalarlos.

El siguiente paso es donde está el error. Utilizo SyncAdapter y AccountManager para controlar algunas cosas. He modificado ACCOUNT_TYPE para usar APPLICATION_ID . Debido al problema con gradle no poder usar ${applicationId} en archivos de recursos xml sin manifiesto, he creado una estructura de directorio diferente para cada sabor y syncadapter.xml copiado el syncadapter.xml y authenticator.xml con las cadenas correspondientes de tipo de authority y account type .

También he probado la técnica descrita en este blog – http://blog.jensdriller.com/android-gradle-workaround-for-missing-placeholder-support-in-resource-files/

Y la parte superior votó las respuestas sobre el uso de tipos de construcción en Gradle para ejecutar la misma aplicación que utiliza ContentProvider en un dispositivo, pero las cosas no parecen funcionar.

¿Alguien ha podido conseguir esto para trabajar recientemente?

  • Android: crea automáticamente variables para todos los IDs en xml
  • "El espacio de nombres no está enlazado" en el archivo xml de recursos cuando se inspecciona el código con Android Studio
  • El valor SharedPreferences no se actualiza
  • Cómo cambiar Primera letra de cada palabra a mayúsculas en Textview xml
  • RSS Feed y ejemplo de adaptador de Google XML - ¿Funciona?
  • Colores web en un archivo de recursos xml de color de Android
  • Exhibición de la secuencia de la Cadena de Android Signo de porcentaje
  • Cómo establecer una altura máxima con contenido de recapitulación en android?
  • Android tamaño de la barra de clasificación (no puede utilizar Widget.RatingBar.Small)
  • ImageView está pixelado en dispositivos Android más antiguos
  • Signo de interrogación (?) En atributos XML para Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.