Puntero nulo de Monodroid al empaquetar

Última versión de MonoDroid en Windows 7 x64 / VS 2010 Pro.

Los ejemplos simples funcionan muy bien, pero en mi aplicación 'real' obtengo un puntero nulo al empaquetar (ya sea después de intentar ejecutar la aplicación o seleccionar las opciones de 'paquete' en el menú de compilación.

La salida relevante se ve así:

C: \ Archivos de programa (x86) \ MSBuild \ Novell \ mandroid.exe -v --nosign --sdk-dir = "C: \ Archivos de programa (x86) \ Android \ android-sdk-windows" --builddir = " [LOCALPATH] Clientes [NAMESPACE] .Android \ obj \ Debug \ android "--framework-dir =" C: \ Archivos de programa (x86) \ Reference Assemblies \ Microsoft \ Framework \ MonoAndroid \ v2.2 "--framework-dir = "C: \ Archivos de programa (x86) \ Reference Assemblies \ Microsoft \ Framework \ MonoAndroid \ v1.0" -S = "[LOCALPATH] Clientes [NAMESPACE] .Android \ obj \ Debug \ res" --package = "[ NAMESPACE] "--nolink --noshared --abi =" armeabi "--java-sdk-dir =" C: \ Archivos de programa (x86) \ Java \ jdk1.6.0_24 "--debug --manifest-template = "[LOCALPATH] Clientes [NAMESPACE] .Android \ Properties \ AndroidManifest.xml" --sdk-platform = "8" "[LOCALPATH] Clientes [NAMESPACE] .Android \ bin \ Debug [ASSEMBLY] .dll" "C: \ Archivos de programa (x86) \ Reference Assemblies \ Microsoft \ Framework \ MonoAndroid \ v2.2 \ Mono.Android.dll "" C: \ Archivos de programa (x86) \ Reference Assemblies \ Microsoft \ Framework \ MonoAndroid \ v1.0 \ mscorlib. dll "" [LOCALPATH] Android \ Core [NAMESPACE] .Client.Android \ bin \ Debug [NAMESPACE] .Client.Android.dll "" [LOCALPATH] Android \ Core [NAMESPACE] .Core.Android \ bin \ Debug [NAMESPACE] .Core.Android.dll "" [LOCALPATH] Android [NAMESPACE] .Diagnostics. Android \ bin \ Debug [NAMESPACE] .Diagnostics.Android.dll "" [LOCALPATH] Android [NAMESPACE] .Logging.Android \ bin \ Debug [NAMESPACE] .Logging.Android.dll "" [LOCALPATH] Android \ Core [NAMESPACE ] .Services.Android \ bin \ Debug [NAMESPACE] .Services.Android.dll "" [LOCALPATH] Android \ Shared [NAMESPACE] .Utils.Android \ bin \ Debug [NAMESPACE] .Utils.Android.dll "" C: \ Archivos de programa (x86) \ Reference Assemblies \ Microsoft \ Framework \ MonoAndroid \ v1.0 \ System.Core.dll "" C: \ Archivos de programa (x86) \ Reference Assemblies \ Microsoft \ Framework \ MonoAndroid \ v1.0 \ System .dll "" C: \ Archivos de programa (x86) \ Reference Assemblies \ Microsoft \ Framework \ MonoAndroid \ v1.0 \ System.Xml.dll "" C: \ Program Files (x86) \ Reference Assemblies \ Microsoft \ Framework \ MonoAndroid \ v1.0 \ System. LOCALPATH] Clientes [NAMESPACE] .Android [NAMESPACE] .Android.csproj] en MonoDroid.Utils.ProcessRocks + c__Iterator1.MoveNext () [5x0] en: 00000 en Monodroid.Toolbox.InvokeCommand (IEnumerable1 commandLine) [0x00000] in <filename unknown>:0 at Monodroid.Toolbox.InvokeAapt (System.String packageName) [0x00000] in <filename unknown>:0 at Monodroid.Droidinator.CreatePackagedResources (System.Collections.Generic.List1 javaTypes) [0x00000] en: 0 en Monodroid.Droidinator.CreateApk () [0x00000] en: 0 en Monodroid.MainClass.Main (System.String [] argv) [0x00000] en: 0 Proyecto de construcción terminado "[LOCALPATH] Clientes [NAMESPACE] .Android [NAMESPACE] .Android.csproj "(SignAndroidPackage target (s)) - FALLADO.

Construcción fallida.

"[LOCALPATH] Clientes [NAMESPACE] .Android [NAMESPACE] .Android.csproj" (SignAndroidPackage target) (1) -> (_CompileAndroidPackage target) -> monodroid: error 1: System.NullReferenceException: referencia de objeto no establecida en una instancia de un objeto [[LOCALPATH] Clientes [NAMESPACE] .Android [NAMESPACE] .Android.csproj]

Dado que un ejemplo simple funciona, debe ser algo en mi proyecto, pero no tengo idea de dónde empezar a buscar ... ¿Alguien tiene una pista?

Gracias por adelantado

preguntado el 16 de mayo de 11 a las 17:05

1 Respuestas

Resolví esto creando una nueva aplicación de Android y agregando elementos progresivamente hasta que encontré el problema.

El problema fue con mi AndroidManifest.xml, que contenía lo siguiente:

<supports-screens android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" />

Originalmente, la aplicación solo admitía 2.3 y versiones posteriores, pero en algún momento la volvimos a poner en 2.2. Si esto fue lo que introdujo el problema o no, no lo sé. Sin embargo, el problema se resuelve eliminando:

android:largeScreens="true"

De esa etiqueta.

contestado el 24 de mayo de 11 a las 17:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.