2012-09-13 19 views
6

Estoy utilizando Mono para Android para crear una aplicación de Android que utiliza una gran cantidad de bibliotecas de clase ya desarrolladas. Cuando agrego el proyecto como una referencia a la aplicación de Android, recibo una advertencia que diceMono para Android Proyecto que no funciona con bibliotecas que se dirigen a .NET framework 4

Advertencia 1 No se puede hacer referencia al proyecto 'Nombre del proyecto'. El proyecto de referencia está dirigida a una familia marco diferente (.NETFramework)

Mi proyecto se dirige a .NET Framework 4. Mi aplicación androide especifica "Android mínimo a target = Android 4.0".

Esto es una advertencia, pero cuando agrego la instrucción using a la clase Activity.cs en la aplicación de Android, recibo varios errores que aparecen en la biblioteca a la que se hace referencia. Luego, si elimino la instrucción de uso y la reconstrucción, los errores desaparecen.

¿Tengo que cambiar algunas configuraciones en el proyecto Mono para Android para poder hacer referencia a las bibliotecas que se dirigen a .NET framework 4.0?

Respuesta

5

No puede hacer referencia a las bibliotecas que se dirigen al .Net framework.

Lo que debe hacer si desea volver a usar ese código es crear un nuevo proyecto de biblioteca de clase de Android y agregar los archivos de la biblioteca .Net existente como archivos "vinculados". Esta es la forma de obtener la reutilización del código en todos los marcos.

Como ejemplo de esto, consulte el proyecto RestSharp en GitHub. Puede ver que los proyectos para MonoDroid, MonoTouch, etc. no tienen archivos, sino enlaces a la fuente común.

Esperemos que en su caso, todo el código en sus bibliotecas existentes sea compatible con el perfil de la estructura MonoDroid. De lo contrario, deberá incluir directivas de preprocesador; esto también se puede ver en RestSharp.

Cuestiones relacionadas