Manera segura de resolver conflictos de dependencia para Drive y Dropbox?

Me gustaría integrar mi aplicación con una variedad de servicios de almacenamiento de archivos. Seguí las instrucciones de inicio rápido para la unidad sdk, que agrega un montón de tarros a mi directorio de librerías de proyectos. Además, el Dropbox sdk requiere la siguiente lista de tarros:

  • Commons-logging-1.1.1.jar
  • Dropbox-android-sdk-1.5.3.jar
  • Httpclient-4.0.3.jar
  • Httpcore-4.0.1.jar
  • Httpmime-4.0.3.jar
  • Json-simple-1.1.jar

Una vez que todos estos se agregan a mi proyecto, obtengo el siguiente error cuando intento ejecutar:

Dex Loader] No se puede ejecutar dex: Varios archivos dex definen Lorg / apache / http / entity / mime / FormBodyPart;

Si quito el frasco de httpmime agregado para Dropbox, mi proyecto funciona muy bien. Pero, ¿es una manera segura de resolver el conflicto? ¿Hay un método alternativo con el cual puedo construir mi proyecto e incluir todos los frascos requeridos?

Suponiendo que no hay conflictos de versión, esto funcionaría bien. Compare el httpmime-4.0.3.jar con el frasco httpmime que Drive añadió a su directorio libs. Si son iguales, entonces está bien. Si son diferentes, entonces usted tendrá que averiguar las diferencias entre los dos y asegurar que no están rompiendo los cambios. Como último recurso, también podría reempaquetar uno de los SDKs con su versión requerida de httpmime en un frasco selectivamente ofuscado con ProGuard, aunque eso es una molestia.

Si está desarrollando con Eclipse, considere usar Google Plugin para Eclipse. Proporciona una forma de agregar cualquier SDK de Google a tu aplicación. Todos los tarros se añaden automáticamente.

  • ¿Cómo configurar las credenciales de Google Drive en la aplicación de Android?
  • Archivo de carga de Android en Google Drive y Dropbox
  • Iniciar sesión en Google Drive en Android sin agregar la cuenta de Google al dispositivo
  • Creación de una carpeta dentro de una carpeta en google drive android
  • La aplicación de Google Play Store con la unidad de Google sdk muestra siempre la opción "Elegir cuenta"
  • Uso del SDK de Google Drive de Android
  • Carga reanudable con Drive API para Android
  • Error: GooglePlayServicesUtil: Se ha producido un error interno. Consulte los registros para obtener información detallada. ¿Cómo puedo solucionar esto?
  • Excepción de autenticación de Google Drive: ¿necesita permiso? (V2)
  • Common_google_play_services_unknown_issue "no se traduce en af, am, ar, be, bg
  • Android google unidad de inicio rápido muestra la imagen de carga falla
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.